Bonjour, aujourd’hui, dans ce billet je vais essayer de vous présenter un produit qui m’a beaucoup plus : LemonLdap-ng.
L’installation sera faite sur une VM (kvm) Debian 6 (Squeeze) x64 en installation minimale.
Pour mon installation de test, j’ai choisi d’utiliser le package du depot officiel Debian.
L’utilisation des sources devient obligatoire si vous désirez utiliser les dernières fonctionnalités ou corrections de bug.
Se référer à la documentation officielle de LemonLdap pour les détails.
Notez cependant l’importance des différents points de configuration obligatoires que je vais reprendre ici :
Exécutez cette commande afin de changer le domaine par défaut :
sed -i 's/example\.com/mondomaine.fr/g' /etc/lemonldap-ng/* /var/lib/lemonldap-ng/conf/lmConf-1 /var/lib/lemonldap-ng/test/index.pl
Ajoutez la configuration à Apache :
root@hv-4:~# a2ensite handler-apache2.conf
root@hv-4:~# a2ensite portal-apache2.conf
root@hv-4:~# a2ensite manager-apache2.conf
Testez la configuration et relancez Apache :
root@hv-4:~# apache2ctl configtest
root@hv-4:~# apache2ctl restart
Dans la documentation, il vous est précisé de copier le contenu du fichier hosts de LemonLdap dans celui du système avec la commande suivante :
cat /etc/lemonldap-ng/for_etc_hosts >> /etc/hosts
Il n’est pas utile de tout copier. LemonLdap à besoin de 4 noms différents pour fonctionner correctement : auth.mondomaine.fr, manager.mondomaine.fr, portal.mondomaine.fr et reload.mondomaine.fr.
Vous créerez les enregistrements A (ou AAAA si ipv6) pour « manager » et « portal » (qui pointerons sur les @ip de LemonLdap privé/public en fonction) dans votre DNS donc inutile de les mettre dans le Hosts.
Seul auth.mondomaine.fr et reload.mondomaine.fr seront utiles (pour permettre l’enregistrement de la configuration via l’interface web) car ils sont utilisés uniquement en local.
Il est bien sur possible de modifier ce comportement par défaut en éditant les fichier de configuration des VirtualHosts dans /etc/lemonldap-ng/ .
Sécurisation de l’accès au Manager avec authentification Ldap :
Activez le module ldap pour apache :
root@hv-4:~# a2enmod authnz_ldap
root@hv-4:~# apache2ctl restart
Éditez le fichier /etc/lemonldap-ng/manager-apache2.conf
Remplacez :
Order deny,allow
Deny from all
Allow from 127.0.0.1
Options +ExecCGI
Par :
AuthzLDAPAuthoritative On
AuthName "Bienvenue sur le manager de LemonLdap-ng. Veuillez vous identifier."
AuthType Basic
AuthBasicProvider ldap
#Rentrez les infos de votre serveur Ldap
#AuthLDAPBindPassword "secret"
AuthLDAPURL ldap://ldap.mondomaine.fr:389/ou=LocalPeople,dc=mondomaine,dc=fr?uid
Require ldap-user Administrateur
Satisfy all
Options +ExecCGI
Voir la doc d’apache pour les directives, mais je pense qu’elles sont assez explicites.
Testez la configuration et relancez Apache :
root@hv-4:~# apache2ctl configtest
root@hv-4:~# apache2ctl restart
A ce stade, vous devez avoir un accès à l’interface web de LemonLdap à l’adresse suivante : http://manager.mondomaine.fr
La configuration va pouvoir commencer…
Utilisant moi même LemonLDAP::NG depuis un moment, je pense pouvoir me permettre une petite remarque.
Le « choix de la facilité » en passant par le dépôts officiels de Debian n’est pas une bonne idée selon moi, dans le sens où les packages de LemonLDAP peuvent ne pas être à jour (ce qui est actuellement le cas il me semble) comme spécifié ici : http://lemonldap-ng.org/documentation/latest/installdeb#official_repository
En utilisant les dépôts Dabian, il m’a par exemple été impossible de déployer un handler de LemonLDAP sur un serveur distant, la faute à un bug corrigé sur un version suivante, disponible sur le dépôt de LemonLDAP (adresse disponible ici http://lemonldap-ng.org/documentation/latest/installdeb#llng_repository)
En effet, ce n’est de loin pas la meilleure solution. J’ai écris cet article uniquement à titre « démonstratif », il n’est en rien une référence.
Je vais modifier un peu mon article. Merci de la remarque
bon depart