Una volta creati i certificati si può passare alla configurazione di slapd; il primo passo è copiarli sulla macchina che ospiterà il server. Io li ho messi nella insieme agli altri file della configurazione di SSL, nella directory deputata ai certificati, /etc/ssl/certs, rinominandoli opportunamente come:
[root@havnor certs]# ls -l total 16 -r--r--r-- 1 root root 1326 Aug 13 16:16 cacert.pem -r--r--r-- 1 root root 3711 Aug 13 16:16 ldapcert.pem -r-------- 1 root root 887 Aug 13 16:16 ldapkey.pem -r-------- 1 root root 1720 Aug 13 16:16 ldapreq.pem
Dopo di che si tratta di configurare slapd per l'uso di detti certificati. Questo è stato fatto aggiungendo al file di configurazione (/etc/ldap/slapd.conf) le seguenti righe:
# For SSL/TSL authentication TLSCertificateFile /etc/ssl/certs/ldapcert.pem TLSCertificateKeyFile /etc/ssl/certs/ldapkey.pem TLSCipherSuite HIGH TLSCACertificateFile /etc/ssl/certs/cacert.pem #TLSVerifyClient 1scommentando l'ultima riga se si vuole imporre l'autenticazione del client. Infatti se essa è settata, fintanto che il client non è opportunamente configurato (vedi sez. 4.3) per essere riconosciuto dal server, sarà impossibile qualunque interrogazione.
Di norma questa opzione non viene utilizzata, in quanto (vedi quanto esposto in sez. 4.3) non esiste una modalità per permettere ad un utente generico l'accesso ad un certificato. La verifica dell'identità del client si gioca pertanto tutta sul suo essere in grado di autenticarsi presso il server come utente dell'elenco.
L'ultimo passo è modificare lo script che attiva/disattiva il server, nel caso di Debian questo è /etc/init.d/slapd, che deve essere predisposto per lanciare slapd per l'ascolto solo su SSL; questo si fa con la seguente modifica:
start-stop-daemon --start --quiet --pidfile "$pf" --exec /usr/sbin/slapd\ -- -h 'ldaps:///'che aggiunge il parametro -h 'ldaps:///' all'avvio di slpad.