OpenLDAPのインストール

先日の作業に引き続き、CuBoxのArch LinuxにOpenLDAPをインストールします。
LDAPサーバの起動、管理者の設定、RapidSSLの証明書を用いたSSL接続、までを今回の作業の目標としています。

インストール

pacman -Sy openldap

rootで作業したのでsudoしていません。以下同様です。

データベースの準備
参考ページの方々の書いているとおり、
・念のためのいったん全削除
・設定ファイルの準備
・core schemaの設定
・パーミッションの設定
を行います。

rm /var/lib/openldap/openldap-data/*
cp /etc/openldap/DB_CONFIG.example /var/lib/openldap/openldap-data/DB_CONFIG
slapadd -l /etc/openldap/schema/core.ldif
chown -R ldap:ldap /var/lib/openldap/openldap-data

/run/openldap/ディレクトリの準備
このディレクトリがないと起動しないため作成しておきます。

mkdir /run/openldap
chown ldap:ldap /ru/openldap

/etc/openldap/slapd.confの修正
まずは起動させたいので最低限の設定をします。
rootpwはslappasswdコマンドで作成しておきます。

suffix "dc=xxxx,dc=xxx"
rootdn "cn=yyyy,dc=xxxx,dc=xxx"
rootpw {SSHA}zzzzzzzzzzzzzzz

設定チェック

slaptest

幸いにエラーが出なかったので、そのまま起動させます。

slapdの起動

systemctl start slapd

SSLの設定
RapidSSLのcrtとkeyファイルを設置します。今回は/etc/ssl/certs/に置きました。
中間CAの指定に悩みましたが、まずはこのように設定しました。不都合が出たら修正します。

TLSCertificateFile /etc/ssl/certs/xxxxxxxx.crt
TLSCertificateKeyFile /etc/ssl/certs/xxxxxxxx.key
TLSCACertificateFile /etc/ssl/certs/RapidSSL_CA_bundle.pem

起動設定
Arch Wikiに従って、/etc/systemd/system/slapd.serviceに-hオプションを追加します。

ExecStart=/usr/bin/slapd -u ldap -g ldap -h "ldap:/// ldaps:///"

※最初はこのファイルがなかったので新規作成しました。

OpenLDAP 2.4対応
ここまで設定しておいてからOpenLDAP 2.4以降はslapd.confを使わないと書いてあったので、これまた指示どおりに実行。

slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/
chown -R ldap:ldap /etc/openldap/slapd.d

確かに/etc/openldap/slapd.d/以下にディレクトリやファイルが作成されています。
今後はもうちょっと調べて、こっちで設定を調整するようにしようと思います。

クライアント設定
SSLで接続確認するのでクライアントにも設定します。
/etc/openldap/ldap.confに下記を記述します。

BASE dc=xxxx,dc=xxx
URI ldaps://localhost:636
TLS_CACERTDIR   /etc/ssl/certs/
TLS_CACERT   /etc/ssl/certs/RapidSSL_CA_bundle.pem

動作確認
ようやく動作確認できます。

ldapsearch -x -D "cn=yyyy,dc=xxxx,dc=xxx" -b "dc=xxxx,dc=xxx" -W -H "ldaps://xxxx.xxx:636"

まだ何も登録していないので、

# extended LDIF
#
# LDAPv3
# base <dc=xxxx,dc=xxx> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#

# search result
search: 2
result: 32 No such object

# numResponses: 1

と返ってきます。やれやれ一苦労でした。

参考ページ
OpenLDAP – Arch Wiki
ArchLinux でOpenLDAP
ArchLinuxでOpneLDAPサーバー動かす その1
[upki-odcert:58] Re: FirePass 1200 および OpenLDAP および Cisco ASA 5520 への証明書インストール方法
OpenLDAP 2.1 管理者ガイド: TLS の使用法

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です