ldap un jour...
by Emile `iMil' Heitor - 2005-10-22
Et c’est au tour d’apache. Très très simple :
cd /usr/ports/www/mod_vhost_ldap/ make install clean
Si votre apache n’est pas compilé avec le support LDAP vous vous ferez insulter.
À noter que, contrairement à ce que dit le port :
`
WITH_LDAP: Enable LDAP support (mod_auth_ldap) (implies WITH_LDAP_MODULES)
` Si je ne place pas explicitement WITH_LDAP=yes et WITH_LDAP_MODULES=yes, je me prend un unresolved symbol au démarrage d’apache.
Ajoutez maintenant dans votre httpd.conf (dans cet ordre) :
LoadModule ldap_module libexec/apache2/mod_ldap.so LoadModule vhost_ldap_module libexec/apache2/mod_vhost_ldap.so
puis
VhostLDAPEnabled on VhostLDAPUrl "ldap://127.0.0.1/ou=votre,dc=basedn" VhostLdapBindDN "cn=utilisateur,ou=qui,dc=binde" VhostLDAPBindPassword "mot de passe convivial"
Copiez le schéma fourni /usr/local/share/doc/mod_vhost_ldap/mod_vhost_ldap.schema dans /usr/local/etc/openldap/schema/ et ajoutez
include /usr/local/etc/openldap/schema/mod_vhost_ldap.schema
dans votre slapd.conf
Evidemment, redémarrez slapd et httpd.
Il ne vous reste plus qu’à provisionner avec votre editeur LDAP favori. Les attributs sont triviaux, par exemple : `
jard.in, apache, jardin
dn: apacheServerName=jard.in,ou=apache,dc=jardin
objectClass: top
objectClass: apacheConfig
apacheServerName: jard.in
apacheDocumentRoot: /home/www
Je regrette toutefois que l'auteur n'ait pas prévu des champs relatifs aux logfiles, j'ai du utiliser une vieille bidouille à base de LogFormat :
LogFormat “%v %h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i"” combined
CustomLog /var/log/httpd-access-vhosts.log combined
`
Pour faire passer sur le fichier httpd-access-vhosts.log le script split-logfile fourni avec apache2 qui sépare ce type de log fonction du vhost. Par très classe.