Dans un environnement où vous avez déjà un annuaire Active Directory configuré et fonctionnel (niveau fonctionnel 2003 dans mon cas) et que vous souhaitez utiliser en parallèle un annuaire libre tel que OpenLDAP, vous ne pourrez pas exporter les mots de passes AD dans l’OpenLDAP, et demander à vos utilisateurs de retenir un mot de passe supplémentaire est pour eux insurmontable ! (Si si !!!)
Mais heureusement la vie est belle et il existe SASL !
Lien Wikipedia : http://fr.wikipedia.org/wiki/Simple_Authentication_and_Security_Layer
Une documentation de Linagora explique très bien le fonctionnement : Site communautaire de Linagora
La configuration avec OpenLDAP fera l’objet d’un autre article, ici nous n’allons nous consacrer qu’à faire fonctionner SASL.
Installation de sasl2-bin et de libsasl2-modules :
# aptitude install sasl2-bin libsasl2-modules
Il n’y a que 2 fichiers de configuration à adapter, /etc/default/saslauthd et /etc/saslauthd.conf .
Voici les miens :
/etc/default/saslauthd :
START=yes
DESC=”SASL Authentication Daemon”
NAME=”saslauthd”
MECHANISMS=”ldap”
MECH_OPTIONS=”/etc/saslauthd.conf”
THREADS=5
OPTIONS=”-c -m /var/run/saslauthd”
/etc/saslauthd.conf :
ldap_servers: ldap:// adresse IP ou DNS du serveur Active Directory
ldap_search_base: dc=nomdu,dc=domaine
ldap_timeout: 30
ldap_filter: (sAMAccountName=%u)
ldap_bind_dn: compte@nomdu.domaine
ldap_password: mot de passe du compte ci-dessus
Voilà voilà, il est temps de tester :
scratchy:~# /etc/init.d/saslauthd restart
Stopping SASL Authentication Daemon: saslauthd.
Starting SASL Authentication Daemon: saslauthd.
scratchy:~# testsaslauthd -u sasl -p motdepassepasjuste
0: NO “authentication failed”
scratchy:~# testsaslauthd -u sasl -p test
0: OK “Success.”
Success !!! C’est donc bon !
Si vous vous mangez un “authentication failed”, il y a des informations dans /var/log/auth.log :
scratchy:~# tail /var/log/auth.log
Aug 2 18:25:28 scratchy saslauthd[14825]: ipc_init : listening on socket: /var/run/saslauthd/mux
Aug 2 18:25:48 scratchy saslauthd[14826]: Authentication failed for sasl: Bind to ldap server failed (invalid user/password or insufficient access) (-7)
Aug 2 18:25:48 scratchy saslauthd[14826]: do_auth : auth failure: [user=sasl] [service=imap] [realm=] [mech=ldap] [reason=Unknown]
Et vérifiez vos fichiers de config…
Most of the times i visit a blog I notice that most blogs are amateurish. Regarding your blog,I could honestly say that you writting is decent and your website solid.
Thank you.
I try to explain what I understand through my tests.
Sorry I’m not very good in English.