Až budete mít připravený hlavní server (master) služby Open Directory i počítače s replikami:
- Přesvědčte se, že master služby Open Directory i počítače s replikami podporují SSL spojení.
- Na masteru služby Open Directory zapněte SSL šifrování na základě vašeho vlastního podepsaného certifikátu, kterému nastavte stejný název, jako je název hostitele masteru.
- Zapněte SSL na všech počítačích s replikami: Na počítačích s replikami vytvořte nástrojem Server Admin vaše vlastní podepsané certifikáty, kterým nastavte stejný název, jako je název hostitele pro daný počítač.
V Terminálu spusťte tento příkaz:
Mac OS X Server 10.5:
sudo slapconfig -setldapconfig -ssl on -sslkey [path to SSL key] -sslcert [path to SSL cert] -ssldomain [name of the certificate]
Mac OS X Server 10.6:
sudo slapconfig -setldapconfig -ssl on -sslkey [path to SSL key] -sslcert [path to SSL cert]
(Ve výchozím nastavení uloží Server Admin certifikáty do složky /etc/certificates. Nezapomeňte do cesty napsat i názvy souborů.)
Nainstalujte certifikáty z masteru a replik služby Open Directory
Aby vaše klientské počítače mohly používat SSL, musíte certifikát každého serveru z adresářového clusteru zkopírovat na klientské počítače. Certifikáty z masteru a replik služby Open Directory nainstalujete takto:
1. Na každém klientském počítači vytvořte složku /etc/openldap/certs/.
2. Na klientském počítači otevřete Terminál a spuštěním následujícího příkazu stáhněte certifikát ze serveru:
openssl s_client -connect [hostname of the server]:636
3. Řádky uvedené mezi „---BEGIN CERTIFICATE---“ a „---END CERTIFICATE---“ zkopírujte do souboru, který nazvěte „hostname“.
4. Nový soubor hostname umístěte sem: /etc/openldap/certs/.
5. Certifikát můžete otestovat pomocí tohoto příkazu:
openssl s_client -connect [hostname of the server]:636 -CAfile /etc/openldap/certs/hostname
Měl by se zobrazit podobný výstup jako předtím, ale s následující změnou na posledním řádku: verify return code:0(ok) místo hodnoty 18 nebo 19, která se zobrazovala předtím.
6. Máte-li jenom jeden certifikát (například máte jeden LDAP server se zapnutým SSL) přidejte do souboru /etc/openldap/ldap.conf toto:
TLS_CACERT /etc/openldap/certs/[hostitelský název serveru]
Máte-li více LDAP serverů se zapnutým SSL
Každý server budete muset určit ručně, případně je všechny umístit do stejného adresáře a podle následujícího postupu na ně nasměrovat soubor ldap.conf:
1. U každého serveru v LDAP clusteru budete muset pomocí příkazu openssl s_client získat certifikát, stejně jako předtím:
openssl s_client -connect [hostitelský název serveru]:636
2. Až certifikáty budete mít, pomocí funkce c_hash (což je utilita OpenSSL) je převeďte do hashovaného formátu. U každého certifikátu vám c_hash uvede název, který se použije k přejmenování tohoto certifikátu ve složce /etc/openldap/certs:
/System/Library/OpenSSL/misc/c_hash /etc/openldap/certs/hostname
Výstup by měl vypadat zhruba takto: 03be8eb2.0 => /etc/openldap/certs/hostname
3. Až se vám zobrazí název hashe, ručně přejmenujte existující soubor certifikátu.
Příklad:
mv /etc/openldap/certs/hostname /etc/openldap/certs/03be8eb2.0
4. Až funkcí c_hash proženete všechny certifikáty, upravte soubor /etc/openldap/ldap.conf takto:
TLS_CACERTDIR /etc/openldap/certs/
5. Odeberte všechny starší záznamy TLS_CACERTDIR, které v souboru ldap.conf můžou být.
6. Vše ověřte pomocí příkazu ldapsearch:
ldapsearch -v -x -H ldaps://[hostname of the server] -b [searchbase]
7. Pokud už jste se dřív pokoušeli nastavit LDAP server, možná teď budete muset restartovat Adresářové služby:
sudo killall DirectoryService