Salut! Whoot, merci pour ta réponse hyper rapide :-) Alors, c'est parti! Le 21 février 2011 07:52, Tanguy Ortolo <tanguy+a-h@ortolo.eu> a écrit :
Mrjk, 2011-02-21 04:37 UTC+0000:
Ca fait déjà pas mal de temps que j'ai cette idée en tête, et que je l'ai déjà plus ou moins mis en oeuvre, mais j'ai rencontré pas mal de difficultés. Tout d'abord, j'utilise Debian sur un RPS chez OVH. Ensuite, j'aimerai centraliser un peu tout (tout ce qui est possible enfait) sur un serveur (Open)LDAP: utilisateurs, groupes, configurations, ordinateurs, services, permissions ... un peu à la manière de Active Directory, quitte à bidouiller un peu à à écrire quelques scripts. L'idéal serait de pouvoir gérer la majorité de mon cloud à partir d'un seul endroit.
C'est fait pour, quoique je ne comprenne pas ce que signifie gérer des ordinateurs et des services.
Mais c'est là que ça devient compliqué, comment gérer LDAP. Après avoir étudié Active Directory, mais sans pour autant avoir une expérience pratique, il faut bien définir ce que l'on veut: bien organiser son arbre et ses schemas principalement. Et c'est là que je galère, car je n'ai aucune vision d'ensemble couplé au fait que tout les programmes qui peuvent utiliser une authentification LDAP n'interagissent pas forcement de la même manière. Les services que j'aimerai en place sont général: serveur web, FTP, SSH, espace perso, OpenID, Firewall, DNS, Services web divers, mail, Proxy, (Open)VPN/PPTP ...
Tout ça devrait pouvoir utiliser une identification sur LDAP, donc ça va.
Ok, nikel!
En gros, je voudrais: - Avoir une gestion hiérarchique des domaines : domaine.com, puis sous domaine sub1, sub2, sub3 correspondant à des ordinateurs ou des réseau privés (derriere une freebox par exemple) - Pouvoir gérer d'autres domaines: domaine2.com par exemple
Aucun problème, LDAP est fait pour, pour le coup.
Je suis actuellement en train de voir ça, mais je suis passé à PowerDNS, qui me semble plus simple à utiliser avec LDAP... Je fais actuellement mes tests :-)
- Eviter la redondance des informations, et si ce n'est pas possible, passer par des scripts pour vérifier la cohésion des données - je pense par exemple à la gestion la plus simple des utilisateurs et groupes sous LDAP qui implique une redondance des données. Comment résoudre ça ???
Je ne vois pas où se situe cette redondance.
Et bien, si je ne me trompe pas, la manière classique de procéder est la suivante: - dc=exemple, ou=users,uid=[user]: dedans un attribut avec le nom des groupes auquels appartient l'user. - dc=exemple, ou=groupss,uid=[group]: dedans un attribut avec la liste des utilisateurs membre. Le problème de redondance est déjà là, mais pour un peu que l'on modifie le groupe d'un utilisateur dans la branche users, il faudra aussi appliquer la modification dans la branche groups; et vice versa. Bien sur, on pourrai gérer l'appartenance à un groupe uniquement via la branche groups (sans se préoccuper de maintenir une liste de groupe dans la branche user) , mais à ce moment là, si on ne peut faire qu'une seule requete que sur un seul objet (dans certaines implémentation que je n'ai plus en tête), on pourra pas avoir les deux informations en même temps. Exemple: je fais une requete sur tel user appartenant à tel groupe. Alors, je sais pas si je suis très clair, mais j'avais été confronté à ce problème. Ou alors, je me plante carrement ^^ Enfin, j'avais lu un article donnant une solution à ce problème dans un linux magazine, et qui résolvait ce problème par l'utilisation de greffons.
- Utiliser un systeme SSO: un seul login et mot de passe pour tout.
Ce n'est pas un SSO, mais un couple login/mot de passe unique, il y a une subtile différence.
Oui, en effet, le SSO implique un système de ticket (genre Kerberos), si j'ai bien compris. Bon, on verra ça plus tard ^^
- Pouvoir configurer plusieurs fois le meme service: dans ma base LDAP, je veux par exemple plusieurs config samba ou FTP en fonction de l'hote (correspondant à un sous domaine)
Ah, mettre une configuration de logiciel sous LDAP, ça ça ne va pas le faire. Ces logiciels ne sont pas faits pour, ils se configurent chacun à sa manière dans leurs fichiers de configuration. Mais de toute façon je ne vois pas ce que LDAP apporterait.
Ha, ok, bon, alors je dois faire le point sur ce qui doit être centralisé ou pas. Cependant, lorsque l'on configure un compte email (par exemple avec postfix), on doit bien renseigner des paramètres propre à chaque utilisateur, non ? Et la même chose avec samba? Bon, il est peu probable que je configure plusieurs mails pour un meme utilisateur, mais la configuration samba, oui. (enfin quoique je n'ai jamais implementé Samba dans LDAP, donc, peut etre que je me plante encore :-) )
Il y a bien un service très particulier dont une partie de la configuration pratique peut être directement prise du LDAP, c'est le courrier électronique. Il faut alors y penser dès le début, en choisissant un serveur de courrier qui prenne cela en charge et en se documentant dessus pour comprendre comment cela s'utilise.
Ha bah on y est. Mais alors le service mail fait office d'exception qui confirme la règle? Enfin, j'entends par là qu'il n'y a pas d'autres exceptions?
- Pourvoir gérer des groupes d'utilisateurs, et en fonction de l'appartenance, autoriser l'utilisation de certains services ou non (ça je bloque)
Ça c'est de la configuration des services et du LDAP. Par exemple, configurer OpenSSH pour n'autoriser que les connexions des membres du groupe ssh-users, et pour chrooter et forcer SFTP pour les membres du groupe sftp-chrooted. Puis, dans LDAP, créer et remplir ces deux groupes POSIX.
Haaaaa, d'accord, donc, la configuration des utilisateurs ne se fait pas du coté LDAP, mais bien du coté des services. Quand je lis ça, j'ai vraiment l'impression de vouloir mettre du LDAP partout.
- Garder une hierarchie simple et pratique à administrer, via LDAPAdmin, par exemple.
Au hasard: - Contexte: Service/daemon <-> PAM <-> LDAP: Est-il possible de de gérer quels services sont dispo ou non, ou alors c'est du tout ou rien? Cad si j'utilise OpenSSH et VSFTPD, puis(je bloquer le premier tout en autorisant le second, en fonction de l'appartenance d'un utilisateur à un groupe ?
Pour un utilisateur donné, tu veux dire, lui interdire l'accès SSH tout en lui permettant le FTP ? Oui, c'est possible, en passant ou non par PAM. Comme je le disais plus haut, cela consiste à configurer le logiciel en question pour appliquer des contraintes selon que l'utilisateur est membre ou non d'un groupe donné.
Ok, (cf au dessus)
- Comment organiser son arbre user/group/service? J'ai pas trouvé de solution sans éviter le redondance des données - et donc de potentielles erreurs de config: 1) Cas 1: + root/user/[service]/[domain](/conf) + root/user/[domain]/[service](/conf) + root/user/[domain] - [service](/conf) (j'avais d'autres modeles, mais je sais plus ou j'ai noté ça ... :/ )
Ces espèces de chemins ne m'évoquent pas du tout du LDAP, donc je ne comprends pas ce que tu veux dire là.
Heu, oui, c'est pas faux... Je suis allé un peu rapidement... Quand je dis: root/user/[service]/[domain](/conf), comprendre dc=com,dc=example,ou=users,uid=[user],service=samba,hote=monhote1 ... Bon, je sais pas si c'est plus clair, mais je reposerai la question de manière plus précise si je bloque à l'avenir ... Je met cette question en stand-by en attendant.
Bon, ça fait 5 ou 6 mois que je n'ai plus trop bidouillé, mais bon, pour ceux qui ont déjà fait ça, comment avez vous organisé votre arbre ? Quels conseilles pouvez vous me donner pour pas trop galérer ?
Un arbre par noms de domaines, avec très classiquement des nœuds dc (dc=com, dc=example, dc=toto pour toto.example.com). Sous ces nœuds, une unité d'organisation dédiée aux utilisateurs (ou=users), et une autre dédiée aux groupes (ou=groups). Dans ces unités, des utilisateurs POSIX (au moins, mais tu seras sans doute amené à leur ajouter des classes) et des groupes POSIX.
Je te conseille vivement de t'acheter un livre sur LDAP.
Ok, merci pour tes conseils :-) He bien, pour le livre, j'ai déjà fouillé dans quelques bouquins (à la lib de mon université). Mais bon, j'avoue que je manque de vocabulaire adapté et d'une vision globale de ce que je veux faire. Mais pour donner une idée de mon avancement/niveau: - J'ai déjà fait pas mal de petit tests avec LDAP - C'est ok pour le principe de requetes - J'ai réservé un ID pour créer mes schema perso (si nécéssaire) à l'iana - J'ai réussi à faire fonctionner les choses plusou moins comme je voulais, mais jamais satisfait, je recommence tout au bout d'un certain temps. Bah en tout cas, je vous tiens au courant, et je ferai surement un big tuto at the end :-) Voiloute, merci encore !!
-- Tanguy Ortolo
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux)
iQIcBAEBCgAGBQJNYhnEAAoJEOryzVHFAGgZUDcP/2kNMbU1vEuBj/8rdouuOTFa pNq2OhP2F+SYF3ymOQZtYUbriinhR6RJu2Eitag3nCGRnWndwjS7Q3X2zH4w1o75 fAPFmE6cA0Qzq4sggFmk8FHmetm8R4twMQOhCzblJIBxrC4CurnQjKtw1Syg1hGb 3KqqyXj/ZX0jvGbvNCI3jUKhxmsz/qr/RckoaScMjwy2UbkajFhRi0Edq6QfaOLt mpU0VfXMnqv9BtPc7U3xazodcMv1dWDc4qBriYCCGwinTexfFmR7QYvHbkvUwSGz gWtQIDYDY0lOHAlZiqCwEUoyKn0Q/3pPxNQZTf9HG9IVkf7rUtQe+rYca5E7BoLY 8MuWSmnsXszn4k3oqQ+5W9AAo6a7ukdkhzVCIaXD41UfaorBdlZipl2HCgv/kVvl KdqXi2EDr3VhFzIl5JSRlxFTf8g+YlkNAEMYOUZBnhLWU+a7Se7He5WU/YNxoIbl /JyhCsckc1K6JhoHoisAd7m/6WEARCF1Cne+WzW4rLLpRSWYVqM0B+mNlGgNNxCr //38pncCbWvfX9iQRm6QEIrF7reP82Je7jwRawMQBGMfRxH2vsOw/k0pNTU89MX/ 4rhHjdbIdmagdilDUv3DlxN10MrJizpOIjBGSaiBhDBOuYXMNMzqraHjDrWwVvPg yAPnYLZZq1yq0sTJUGlX =roKu -----END PGP SIGNATURE-----
_______________________________________________ auto-hebergement-aide mailing list auto-hebergement-aide@listes.auto-hebergement.fr http://listes.auto-hebergement.fr/listinfo/auto-hebergement-aide
-- MrJK Site web: www.jezu.infos.st