LDAPに挑戦
- 2013.10.17
- Webサイト
- centos, Shibboleth, LDAP, slapd

こんにちは「ヤマ」です。
社内のとあるプロジェクトで「Shibboleth(シボレス)」という環境を構築しました。
シボレスとは、簡単に言えば異なるサーバ間(サービス間)で、シングルサインオンを実現するプロジェクトの総称です。
その中で、初めて「LDAP」という環境構築を体験しました。
しかしイマイチ理解しずらい上に、コマンドでの操作ということもあり、
LDAPのデータベースを数回壊しました。。。。
そんな苦労の末に得られた、「LDAP初期化」の方法を備忘録として書いてみます。
■STEP1
まずはLDAPサービスを停止します
service slapd stop
■STEP2
壊れたDBファイルを削除します
rm -rf /var/lib/ldap/*
■STEP3
DB設定ファイルのオリジナルをコピーしてきます
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
■STEP4
slapdサービスの初期化します
cd /etc/openldap
cp -pR slapd.d slapd.d.org
rm -fr slapd.d/*
■STEP5
SLAPD設定ファイルのオリジナルをコピー
cp -p /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf
■STEP6
LDAP管理者パスワードの暗号化
slappasswd -h {CRYPT} -c ‘$6$%s$’ -s 暗号化したいパスワード
暗号化された結果をコピーします
■STEP7
SLAPD設定ファイルの編集します
vi /etc/openldap/slapd.conf
suffix の変更 (“dc=sample,dc=com”)
rootdn の変更 (“cn=Manager,dc=exmaple,dc=com”)
rootpw の設定 (上記で作成した LDAP 管理者パスワードを設定)
■STEP8
SLAPD設定ファイルのチェックをします
slaptest -u -f /etc/openldap/slapd.conf -v
slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d
■STEP9
関連ファイルの所有者を変更します
chown -R ldap:ldap /var/lib/ldap
chown -R ldap:ldap /etc/openldap/slapd.d
■STEP10
SLAPDサービス開始
service slapd start
■STEP11
LDAP検索先の確認
vi /etc/openldap/ldap.conf
URI ldap://localhost/
BASE dc=example,dc=com
■STEP12
データの投入
ldapadd -x -D “cn=Manager,dc=example,dc=com” -w 設定したパスワード -f ldifファイル
■STEP13
投入したデータを確認する
LDAPディレクトリを検索してみる
ldapsearch -x -D “cn=Manager,dc=example,dc=com” -w 設定したパスワード
コマンドのパスやLDAPの設定値などは各自の環境に沿って読み替えてください~