Gestion des utilisateurs : quels outils?

plus j’étudie les solutions plus je me rapproche de :

  • ispconfig,
  • virtualmin/cloudmin.

Perso j’utilise ISPconfig depuis plusieurs années et j’en suis vraiment content :

  • API pour scripter les actions de masse
  • Utilise que des « briques » libres (Postfix/Dovecot/Apache ou Nginix, plusieurs « mod » php possible…)
  • Ne fait rien d’obscure. En gros tout les soft tape dans la base de donnée Mysql Ispconfigdb (Dovecot pour l’authentification…) et c’est paramétré / embarqué / supporté dans les fichiers de confs « classique » donc tu peux « toucher » / affiner la config de tout les services à la mano sans rien casser si t’es pas satisfait de la conf par défaut… Du coup si ça merde c’est limpide, c’est dans les logs, tu sais ou aller pour corriger… (pas comme des solutions à la Plesk)

Mais je n’ai pas testé Virtualmin donc je ne peux pas comparer…

Le seul point « noir » c’est que l’interface pour les utilisateurs n’est pas hyper « user freindly » pour les noobs…

1 « J'aime »

euh , ispconfig je la trouve vraiment bien fichu !
Tu veux voir celle de cPannel, plesk , fusion Directory ou autre ?

Sérieux, je le trouve vraiment bien ispconfig. (c’est un avis)

Pas compris ton message…

j’ai edité , j’avais oublié un morceau :wink:

Pas mieux compris…

Je dis qu’il est cool et tu me dis « heu il est cool » ou tu me parle de l’API ?

Et oui moi aussi je le trouve vraiment bien Ispconfig…

je dis « qu’il me semble cool comme panneau de contrôle pour le webhosting ;-) »

Hello,

C’est une mine d’info par ici =D !
Pour les utilisateurs de Keycloak, avez-vous réussi à fournir le caldav/carddav Nextcloud au travers du SSO ou est-ce que l’authentification builtin est obligatoire pour ces deux protocoles ?

1 « J'aime »

je te dirai que Keycloak n’embarque pas d’annuaire LDAP etc .
C’est une solution d’authentification, un portail d’authentification.
A mon avis, les solutions d’annuaire libres et/ ou de gestion d’utilisateur sont très limitées en terme d’ergonomie et facilité d’accès pour le béocien.
Soit c’est le bazokka : Freeipa, soit le coupe ongle : openldap.

Pour ma part je vais bientôt lâcher les solutions trop modulaires qui au finale demandent une masse de boulot - et de connaissances - pour être maintenue (si on veut bien faire le boulot).

Je suis en train de me tâter pour mettre :

  • IPSCONFIG,
  • VIRTUALMIN/CLOUDMIN.

Le tout au-dessus de Proxmox qui est stable et offre vraiment le meilleur des deux mondes des VM et des conteneurs.

Kubernetes étant un tout autre monde beaucoup trop liée à Google … donc pas adapté pour un CHATONS voulant dégoogliser … : c’est toujours bon de rappeler le contexte) : ce n’est que mon avis.
Je le dis en ayant pas mal parlé avec des personnes ici qui ont monté de superbes infra à base de Docker, K8S etc .

1 « J'aime »

Alors là… :slight_smile:

Si initialement Google a développé Kubernetes, le projet appartient à la CNCF depuis sa version 1.0, soit depuis presque 5 ans déjà.

D’ailleurs avec cette logique il faudrait se tenir à l’écart des technologies comme WebRTC, gRPC, …etc.

2 « J'aime »

Il semblerait qu’il soit possible d’avoir du SSO sur Nextcloud avec Keycloak en utilisant le standard SAML.

1 « J'aime »

Yes effectivement @aselkim :+1:, je l’ai mis en place et ça fonctionne parfaitement pour l’accès NextCloud.

Malheureusement lorsque les clients CalDav/CardDav s’authentifient, ceux-ci ne passent visiblement pas par le SSO mais bien directement par l’authentification builtin de NextCloud. Les utilisateurs souhaitant donc utiliser la synchro des agendas / contacts sont obligé de configurer un mot de passe supplémentaire dans NextCloud directement.

Il se retrouvent donc potentiellement avec 2 mots de passe différents pour leurs accès NextCloud :

  • Celui configuré dans le SSO (keycloak) pour tous les services Chaton que je propose
  • Celui qu’ils ont dû définir dans l’authentification builtin de NextCloud pour accéder à leur contactes / calendriers

Ma question était de savoir si vous aviez trouvé un moyen de résoudre ce doublon ?

Est-ce que c’est ce que tu suggérais @anon6747921 en amenant OpenLdap/Freeipa ?

1 « J'aime »

Je n’utilise pas NextCloud mais si le serviice CalDav/CardDav exposé par Nextcloud peut exploiter une authentification LDAP alors on peut imaginer déployer Keycloak avec un backend LDAP, ce dernier sera directement exploité pour la partie CalDav/CardDav s’il est possible d’avoir du SSO+LDAP dans Nextcloud.

Je vois aussi qu’il y a une issue à ce sujet qui traine depuis un moment : https://github.com/nextcloud/user_saml/issues/226

ça peut être une bonne option merci @aselkim :slightly_smiling_face:.
Je vous tiens au courant si ça vous intéresse quant à savoir si NextCloud supporte le SSO&Ldap !

Juste, l’issue correspond exactement au comportement que je rencontre.
L’astuce proposé dans celle-ci fonctionne parfaitement d’ailleurs.

1 « J'aime »

à ilinux on utilise FusionDirectory, c’est un webgui qui s’installe avec openldap.
Il permet de gérer les comptes LDAP , un peu plus facilement qu’avec phpldap : il permet beaucoup de chose.
Mais çà reste ardu et quand on doit aller mettre les mains dans la conf. openLDAP : c’est sacrément l’enfer , même si on cause un peu ldap.

Ensuite Nextcloud bind sur cet annuaire openLDAP, comme tout nos autres services adhérents.

Donc Keycloak oui .
Le seul reproche que je peux lui faire : sous le capot c’est du java (WildLfy) etc, avec des stack logiciel infernales pour les néophites
Edit : Keycloak peut constituer sa propre base de compte interne…

Dac merci @anon6747921, je vais check ça aussi.

Oui, tu peux tout à fait utiliser Keycloak avec sa propre base de compte.

https://k8s-school.fr/resources/fr/blog/kubeadm/

sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/debian \
   $(lsb_release -cs) \
   stable"
sudo apt-get update && sudo apt-get install -y apt-transport-https curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl

? (on va pas débattre ici mais bon , c’est un fait)

Oui effectivement comme tu sembles mélanger un peu tout ça risquerait d’être trop long de débattre de ça ici, un sujet dédié serait mieux adapté.

1 « J'aime »

App password, comme chez google :slight_smile:

https://docs.nextcloud.com/server/15/user_manual/user_2fa.html#using-client-applications-with-two-factor-authentication

Le seul "problème " avec keycloack, c’est justement la gestion de ces apps password pour les emails. Il n’existe, a ce jour et a ma connaissance, pas de UI pour que les utilsiateurs puissent gerer leurs app password et alias specialement pour lemail.
Ou alors, il faudrait configurer dovecot pour aller taper direct dans keycloak (qui gere les apps password)

1 « J'aime »

Franchement toutes ces solutions ne sont pas toujours interopérables entre elles, c’est bien le soucis.

A iLinux on va opter pour ISPCOnfig 3.1 ou virtualmin/cloudmin pour la v2.

Pour info Keycloak on peut ajouter d’autre source d’utilisateur (on pense à cela pour ispconfig qui ne bosse que sur une base mariadb et keycloak qui est assez bien foutu pour le sso, son mode SPI permet de créer un connecteur ici : https://www.keycloak.org/docs/latest/server_development/index.html#_user-storage-spi).

Check Keycloak Custom User Federation

It means that, to use diffirent datasource (or process) while Keycloak username / password login

see =>

    https://github.com/keycloak/keycloak-documentation/blob/master/server_development/topics/user-storage/simple-example.adoc
    https://tech.smartling.com/migrate-to-keycloak-with-zero-downtime-8dcab9e7cb2c github => (https://github.com/Smartling/keycloak-user-migration-provider)

First link => explaining how to configure external db to keycloak.

Second link (need changes)=> these examplecan change like that,

    you can create a custom federation implementation,
    it will be call your service,
    your service will be query your db
    your service will response your result

Second example(my suggestion) will be abstract your custom code (federation process, your service) and keycloak. Keycloak ony call your service, everything else are your implementation.
1 « J'aime »