みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

openLDAPでslapd.confの設定

openLDAPをインストールして、ドキュメントのクイックスタート「 http://www.openldap.org/doc/admin24/quickstart.html 」を見ながら、設定を行なっているのですが、期待した結果が得られません。

ドキュメントによると、slapd.confに「suffix "dc=example,dc=com"」と記述した場合、slapdのサービスを起動した後で「ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts」を実行すると、「dn: namingContexts: dc=example,dc=com」と表示されるべきなのですが、「namingContexts: dc=my-domain,dc=com」と表示されてしまいます。そのためかどうかわかりませんが、後続のldapaddを行なっても、正しいパスワードを入れているつもりなのにInvalid Credentials(49)が表示されてしまいます。

環境:CentOS 6 x86_64

インストール:openldap-servers と openldap-clientsをyumでインストールした

rpm -qc openldap-serversの結果:

/etc/openldap/schema/collective.schema
/etc/openldap/schema/corba.schema
/etc/openldap/schema/core.ldif
/etc/openldap/schema/core.schema
/etc/openldap/schema/cosine.ldif
/etc/openldap/schema/cosine.schema
/etc/openldap/schema/duaconf.schema
/etc/openldap/schema/dyngroup.schema
/etc/openldap/schema/inetorgperson.ldif
/etc/openldap/schema/inetorgperson.schema
/etc/openldap/schema/java.schema
/etc/openldap/schema/misc.schema
/etc/openldap/schema/nis.ldif
/etc/openldap/schema/nis.schema
/etc/openldap/schema/openldap.ldif
/etc/openldap/schema/openldap.schema
/etc/openldap/schema/pmi.schema
/etc/openldap/schema/ppolicy.schema
/etc/openldap/schema/redhat/autofs.schema
/etc/openldap/slapd.conf
/etc/pki/tls/certs/slapd.pem
/etc/sysconfig/ldap

当然、slapd.conf は /etc/openldap の中に作っています。

アドバイスよろしくお願いします。

投稿日時 - 2011-09-26 22:39:10

QNo.7036519

困ってます

質問者が選んだベストアンサー

yumでopenldap-serversをインストールしたときに、
/etc/openldap/slapd.confはありましたか?
# 手元のCentOS6(i386)では存在しませんでしたが…。
# slapd.dの方に移行させて、バックアップファイルを残してslapd.confは削除されたようです。

ということで、正しいかは微妙ですが途中までいぢってみました。
# やる前に検索などして正当性などの検証して下さい。

1)slapdを停止させる。
 # service slapd stop
2)作成されたデータベースをとりあえず削除。
 # rm -f /vat/lib/ldap/*
3)同じく作成された設定データベースを削除。(rpmインストール時のデフォルトが書き込まれている模様)
 # rm -rf /etc/openldap/slapd.d/*
4)slapd.confをバックアップからコピー。
 # cp /etc/openldap/slapd.conf.bak /etc/openldap/slapd.conf
5)slapd.confを編集。
 # vi /etc/openldap/slapd.conf
6)オーナーを変更。
 # chown ldap.ldap /etc/openldap/slapd.conf
7)設定データベースを再構築。
 # sudo -u ldap slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d
8)DB_CONFIGを戻す。
 # cp /usr/share/doc/openldap-servers-2.4.19/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
 # chown ldap.ldap /var/lib/ldap/DB_CONFIG
9)slapd起動。
 # service slapd start

7を実施した時点で、/etc/openldap/slapd.d/cn=config/olcDatabase={1}bdb.ldifのolcSuffixが更新されています。
この状態でエントリ追加を行えば適用されるかと。
# 以降はslapd.d以下がメインで使われるでしょうから、slapd.confは不要…になると思われます。

もっとスマートな方法がある…とは思われますけどね。

投稿日時 - 2011-09-27 01:35:18

お礼

ありがとうございました。一度openldap関連をyum remove してみたのですが、それだけではデータベースの内容や各種設定ファイルが消えなかったので全て手動で消してから、このステップを行い、ldapaddも成功しました。

投稿日時 - 2011-09-27 23:09:50

ANo.1

このQ&Aは役に立ちましたか?

4人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問