Todo: DH-Parameter einbinden
====== SSL / TLS für OpenLDAP ======
===== Vorraussetzungen =====
* [[ldap|OpenLDAP]] installiert
* [[ssl| SSL Zertifikat]] erstellt
* Korrektes [[bind|DNS]]
* Korrekte [[zeitserver|Uhrzeiten]] auf allen Rechnern
===== Als root Zertifikate, Anträge und Schlüssel an die passenden Stellen kopieren =====
==== Debian (ab 8) ====
Paket: ssl-cert (( legt die gruppe ''ssl-cert'' an und setzt passende Berechtigungen für ''/etc/ssl/private'' ))
cd /etc/ssl
cp /root/server-ssl/servercert.pem certs/
cp /root/server-ssl/serverkey.pem private/
cp /home/ca/ca.*/cacert.pem certs/
chgrp ssl-cert private/serverkey.pem
chmod 440 private/serverkey.pem
chmod 444 certs/{server,ca}cert.pem
adduser openldap ssl-cert
service slapd restart
===== slapd konfigurieren =====
dn: cn=config
changetype: modify
add: olcTlsCaCertificateFile
olcTlsCaCertificateFile: /etc/ssl/certs/cacert.pem
-
add: olcTlsCertificateFile
olcTlsCertificateFile: /etc/ssl/certs/servercert.pem
-
add: olcTlsCertificateKeyFile
olcTlsCertificateKeyFile: /etc/ssl/private/serverkey.pem
((
''/etc/ldap/slapd.conf'' : ( Debian 4.0 )
TLSCACertificateFile /etc/ssl/certs/cacert.pem
TLSCertificateFile /etc/ssl/certs/servercert.pem
TLSCertificateKeyFile /etc/ssl/private/serverkey.pem
))
ldapmodify -Y EXTERNAL -H ldapi:/// -f ./olcTls.ldif
ldapsearch -Y EXTERNAL cn=config | grep -i olcTls
''/etc/default/slapd'' :
SLAPD_SERVICES="ldap:/// ldaps:/// ldapi:///"
Konfiguration prüfen:
slaptest
Dienst neu starten:
service slapd restart
==== testen ====
openssl s_client -connect YOUR_LDAP_SERVER:636 -showcerts -CAfile /home/ca/ca.example.com/cacert.pem
oder
openssl s_client -connect YOUR_LDAP_SERVER:389 -showcerts -starttls ldap -CAfile /home/ca/ca.example.com/cacert.pem
(( erst mit https://github.com/openssl/openssl/pull/2293 verfügbar ))
(sollte u.a. "Verification: OK" ausgeben)
===== Client einrichten =====
''$HOME/.ldaprc'' :
BASE dc=villa,dc=local
BINDDN cn=admin,dc=villa,dc=local
URI ldap://ldap1.villa.local
TLS_CACERT /etc/ssl/certs/ca.linuxhotel.de.cert.pem
==== Testen ====
ldapsearch -x -W -ZZ
===== Dokumentation =====
* [[ http://www.openldap.org/doc/admin23/tls.html | OpenLDAP und SSL/TLS ]]