Bonjour, J'essaie de mettre en place la couche TLS pour les communications avec un annuaire LDAP. Debian 3.1r1, OpenLDAP 2.2.23-8, Samba 3.0.14a, libnss-ldap 238-1, libpam-ldap 178-1, smbldap-tools 0.9.2 La machine nommé PDC-SRV appartient au domaine "oac" et sert de controleur de domaine (PDC) Samba avec annuaire LDAP, plus quelques services (DHCP, DNS, ...) J'ai suivi plusieurs tutoriaux (plusieurs se recoupent et divergent), et je suis arrivé à une configuration qui marche très bien sans TLS. Le problème vient quand j'active TLS avec start_tls (pas SSL, je reste sur le port 389 avec la couche TLS). Voici les modifications apportées pour TLS, tout d'abord les certificats : mkdir /etc/ldap/cert *** certif serveur # openssl genrsa -out serverkey.pem 1024 # openssl req -new -key serverkey.pem -out servercert.req tout est laissé par défaut, sauf le CN : PDC-SRV.oac *** certif de la CA # openssl genrsa -out cakey.pem 1024 # openssl req -new -x509 -key cakey.pem -out cacert.pem -days 365 tout est laissé par défaut, sauf le CN : CA *** signature du certif serveur par la CA # openssl x509 -req -in servercert.req -out servercert.pem -CA cacert.pem -CAkey cakey.pem -days 365 -CAcreateserial # chmod 400 serverkey.pem *** modification de /etc/ldap/slapd.conf TLSCertificateFile /etc/ldap/cert/servercert.pem TLSCertificateKeyFile /etc/ldap/cert/serverkey.pem TLSCACertificateFile /etc/ldap/cert/cacert.pem *** modification de /etc/ldap/ldap.conf HOST 127.0.0.1 # pour info, deja présent TLS_CACERT /etc/ldap/cert/cacert.pem ssl start_tls tls_checkpeer yes tls_cacertfile /etc/ldap/cert/cacert.pem *** Redémarrage du serveur # /etc/init.d/slapd restart pas d'erreur *** Tests de recherche dans l'annuaire # ldapsearch -b 'dc=oac' -ZZ -xh PDC-SRV.oac -v ldap_initialize( ldap://PDC-SRV.oac ) ldap_start_tls: Can't contact LDAP server (-1) # ldapsearch -b 'dc=oac' -Z -xh PDC-SRV.oac -v ldap_initialize( ldap://PDC-SRV.oac ) ldap_start_tls: Can't contact LDAP server (-1) ldap_bind: Can't contact LDAP server (-1) # ldapsearch -b 'dc=oac' -ZZ -x -v ldap_initialize( DEFAULT ) ldap_start_tls: Connect error (-11) additionnal info: TLS: hostname does not match CN in peer certificate lors de ce test, je vois dans les logs de slapd cette ligne : connection_read(9): unable to get TLS client DN, error 49 id=5 # ldapsearch -b 'dc=oac' -Z -x -v ldap_initialize( DEFAULT ) ldap_start_tls: Connect error (-11) additionnal info: TLS: hostname does not match CN in peer certificate filter: (objectclass=*) requesting: ALL [...] affichage des entrées de la base LDAP, ça marche si TLS n'est pas employé donc. Peut-être que ces tests peuvent permettre de voir d'où vient le problème. Pourriez-vous m'aider à résoudre ce problème svp ? Merci d'avance |