Open Directory: SSL:n käyttöönotto Open Directoryssa kopioiden kanssa

SSL:n avulla voidaan salata Open Directoryn masterin, kopioiden ja LDAP-hakemistodomainia käyttävien tietokoneiden välinen tietoliikenne. SSL antaa palvelimelle varmennetun identiteetin digitaalisen varmenteen avulla. Voit käyttää itse allekirjoitettua tai varmenteen myöntäjältä saatua varmennetta.

Toimi seuraavasti, kun Open Directoryn master- ja kopiotietokoneet ovat käytettävissä:

  1. Varmista, että Open Directoryn master- ja kopiotietokoneet tukevat SSL-yhteyksiä.
  2. Ota SSL-salaus käyttöön Open Directoryn masterissa käyttämällä itse allekirjoitettua varmennetta, jossa yleinen nimi on asetettu masterin palvelinnimeksi.
  3. Ota SSL käyttöön kaikissa kopiotietokoneissa: luo itse allekirjoitettu varmenne kopiotietokoneissa käyttämällä Server Adminia ja käytä samaa yleistä nimeä kyseisen tietokoneen palvelinnimenä.

Suorita seuraava komento Päätteessä:

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]

(Server Admin tallentaa varmenteet oletusarvoisesti kansioon /etc/certificates. Muista myös sisällyttää tiedostonimet polkuun.)

Varmenteiden asentaminen Open Directoryn masterista ja kopioista

Jotta asiakastietokoneet voivat käyttää SSL:ää, varmenteet pitää kopioida hakemistoklusterin jokaiselta palvelimelta asiakastietokoneisiin. Asenna varmenteet Open Directoryn master- ja kopiotietokoneista seuraavasti:

1. Luo /etc/openldap/certs-hakemisto jokaiseen asiakastietokoneeseen.

2. Hae varmenne palvelimelta avaamalla Pääte asiakastietokoneessa ja suorittamalla seuraava komento:

openssl s_client -connect [hostname of the server]:636

3. Kopioi "---BEGIN CERTIFICATE---"- ja "---END CERTIFICATE---"-kohtien välissä olevat rivit hostname-nimiseen tiedostoon.

4. Sijoita uusi hostname-tiedosto tähän kansioon: /etc/openldap/certs/

5. Voit testata varmennetta seuraavalla komennolla: 

openssl s_client -connect [hostname of the server]:636 -CAfile /etc/openldap/certs/hostname

Tulosteen pitäisi olla samankaltainen kuin aiemmin, paitsi viimeisellä rivillä on seuraava muutos: verify return code:0(ok), kun aiemmin luku oli 18 tai 19.

6. Jos käytössä on vain yksi varmenne (esimerkiksi yksi LDAP-palvelin, jossa käytetään SSL:ää), lisää seuraava rivi /etc/openldap/ldap.conf-tiedostoon:

TLS_CACERT /etc/openldap/certs/[palvelimen palvelinnimi]

Toimi seuraavasti, jos SSL on käytössä useammassa LDAP-palvelimessa

Palvelimet täytyy määritellä yksitellen tai sijoittaa ne kaikki samaan hakemistoon ja osoittaa ldap.conf-tiedosto niihin seuraavasti:

1. Hae varmenteet jokaiselle LDAP-klusterin palvelimelle edellä kuvatulla tavalla käyttämällä openssl s_client -komentoa:

openssl s_client -connect [palvelimen palvelinnimi]:636

2. Kun olet saanut varmenteet, muunna ne hajautettuun muotoon c_hash-työkalun (OpenSSL-työkalu) avulla. c_hash antaa kullekin varmenteelle nimen, joka annetaan hakemistossa /etc/openldap/certs olevan varmennetiedoston uudeksi nimeksi:

/System/Library/OpenSSL/misc/c_hash /etc/openldap/certs/hostname

Tulosteen pitäisi olla seuraavanlainen:  03be8eb2.0 => /etc/openldap/certs/hostname

3. Kun olet saanut hajautusnimen, nimeä nykyinen cert-tiedosto uudelleen manuaalisesti.

Esimerkki:

mv /etc/openldap/certs/hostname /etc/openldap/certs/03be8eb2.0

4. Kun olet käyttänyt c_hash-työkalua kaikkiin varmenteisiin, muokkaa /etc/openldap/ldap.conf-tiedostoa seuraavasti:

TLS_CACERTDIR /etc/openldap/certs/

5. Poista ldap.conf-tiedostossa mahdollisesti olevat aiemmat TLS_CACERTDIR-merkinnät.

6. Varmista ldapsearch-komennolla:

ldapsearch -v -x -H ldaps://[hostname of the server] -b [searchbase]

7. Jos olet jo yrittänyt ottaa LDAP-palvelimen käyttöön, sinun täytyy ehkä käynnistää hakemistopalvelut uudelleen:

sudo killall DirectoryService
Julkaisupäivämäärä: