OpenLDAPをTLSに対応させる
セキュリティを考慮し、LDAPサーバーをTLS(Transport Layer Security)に対応させる。
2. 暗号鍵の作成
まず、OpenLDAPが使用する暗号鍵を作成する。この暗号鍵は slapd から読める様にする必要があるため、オーナーを ldap に設定している。また、パスフレーズの設定は行わない。
[root@localhost ~]# cd [root@localhost ~]# openssl genrsa -out /etc/pki/tls/private/ldap.key 2048 [root@localhost ~]# chmod 400 /etc/pki/tls/private/ldap.key [root@localhost ~]# chown ldap:ldap /etc/pki/tls/private/ldap.key
3. 証明書の発行
作成した暗号鍵を元にCSRを作成し、証明書を発行する。「(CentOS 5.4でSSL/TLSのプライベート認証局(Private CA)を構築する」の通りにプライベートCAを構築している場合、以下の手順で証明書の発行まで行うことができる。
[root@localhost ~]# cd /etc/pki/tls/certs [root@localhost ~]# openssl req -new -key /etc/pki/tls/private/ldap.key -out ldap.csr (省略) [root@localhost ~]# openssl ca -config /etc/pki/myCA/ca.conf -in ldap.csr -out server.crt (省略)
CSRの作成、プライベートCAによる署名について詳しい手順は下記の記事で解説している。
4. OpenLDAPの設定
証明書の署名を行ったCAのルート証明書を /etc/openldap/cacerts 以下に保存する。今回はプライベートCAで署名を行ったので、ローカルにあるCAのルート証明書をそのままコピーする。
[root@localhost ~]# cp /etc/pki/myCA/cacert.pem /etc/openldap/cacerts/
/etc/openldap/slapd.conf を開き、以下の3行を追加する。
TLSCACertificateFile /etc/openldap/cacerts/cacert.pem TLSCertificateFile /etc/pki/tls/certs/ldap.crt TLSCertificateKeyFile /etc/pki/tls/private/ldap.key
slapd.conf の編集を終えたら slapd を再起動する。
[root@localhost ~]# service ldap restart