- PR -

OpenLDAPのデータの追加・更新・削除について

投稿者投稿内容
be1300cc
ベテラン
会議室デビュー日: 2002/07/04
投稿数: 88
投稿日時: 2003-07-29 15:50
tanaboさん

ログの件ですが、slapd実行後、先程のslapd -d 255実行後のログはでましたが、
ldapdeleteコマンド実行後は、同じターミナル上には、
ldap_bind: Inappropriate authentication (48) しか表示されませんでした。

>1.データを削除しようとしているユーザはrootdnですか?
>2.あるいはLDAPサーバ内に追加したユーザでしょうか?
全件(上記2件)を対象としています。

>3.rootdnを使用して削除しようとしているなら,rootdnをLDAPサーバ内に登録しましたか?
私の認識が間違っていましたら申し訳ありませんが、rootdnをLDIFファイル上には記述し、
設定しておりますが、LDAPサーバ内には登録していないと思います。

因みに、LDAPサーバ内に登録する設定方法はどのような感じでしょうか?
もしかしたら設定しているかもしれません。

別件ですが、ちょっとkerberosの方が怪しくなってきました。
実は以前、2つのkerberosの両方試してインストールしてみたのですが、インストール時に
エラーが出ていたようでして、両方ともインストールが完了していなかったように思われます。
その後、色々と調べてみたのですが、既に元からRedHatの中に入っていた為インストール時に
失敗した感じでした。
うる覚えな為、正確な発言をできなくてすみません。




tanabo
常連さん
会議室デビュー日: 2003/04/24
投稿数: 34
投稿日時: 2003-07-29 16:15
be1300ccさん

rootdnをLDIFファイルに記述しているなら,
おそらくLDAPサーバに登録されています。
searchコマンドで確認してみてください。
一般に,rootdnはサーバに登録しません(してもいいけどアクセス権設定が必要)。

データ登録の方法については以前の投稿を見ていただければ問題ないと思います。
rootdnはLDIFファイルに書く必要は通常ありません。

現在のrootdnがLDAPサーバに登録されていて,それを削除したい場合は
slapd.confのrootdnを適当に変更してサーバを再起動し,
削除を行ってみてください。
be1300cc
ベテラン
会議室デビュー日: 2002/07/04
投稿数: 88
投稿日時: 2003-07-30 14:22
tanaboさん

色々と調べたのですが、ldapsearchの結果気になる点が1点あります。
1ページ目に記述しました通り、エントリーは2件あると思うのですが、以下のコマンド
で検索するとエラーで、失敗してしまいます。

ldapsearch -x -b 'cn=Manager,dc=tec,dc=jp' '(objectclass=*)'
【エラー】
# extended LDIF
#
# LDAPv3
# base <cn=Manager,dc=tec,dc=jp> with scope sub
# filter: (objectclass=*)
# requesting: ALL
#

# search result
search: 2
result: 32 No such object
matchedDN: dc=tec,dc=jp

# numResponses: 1

そうすると、このDNは登録させていないということになるのでしょうか?

また確認なのですが、SLAPDの起動・終了等についてですが
・起動:su root -c /usr/local/libexec/slapd
・デバッグモード:slapd -d 255 -f /usr/local/etc/openldap/slapd.conf
・終了:kill -INT'cat /usr/local/var/slapd.pid'
   ⇒ 実行できません
   【エラー】bash: kill: cat /usr/local/var/slapd.pid: no such pid
でよろしいのでしょうか?

よろしくお願いします。
tanabo
常連さん
会議室デビュー日: 2003/04/24
投稿数: 34
投稿日時: 2003-07-31 13:08
be1300ccさん

searchの検索結果は0件のように見えますね.
"dc=tec,c=jp"で検索して,それでもヒットしないなら
データは存在しないと思います.

また、終了処理についてですが,
kill -INT `cat /usr/local/var/slapd.pid`です.
"'(シングルクオート)"ではなく"`(Shift+@)"です.
be1300cc
ベテラン
会議室デビュー日: 2002/07/04
投稿数: 88
投稿日時: 2003-07-31 13:45
tanaboさん

終了コマンドは、シングルオートと勘違いしていました。(上手く終了できました。)

サーチの結果なのですが、データを消したつもりはないのですが(ldapdeleteコマンドが効かないため)、
サーチしても
ldapsearch -x -b 'dc=tec,dc=jp' '(objectclass=*)'
【エラー】
# extended LDIF
#
# LDAPv3
# base <dc=tec,dc=jp> with scope sub
# filter: (objectclass=*)
# requesting: ALL
#

# search result
search: 2
result: 32 No such object
matchedDN: dc=tec,dc=jp

# numResponses: 1
だった為、試しにSLAPDを再起動させ、エントリーのADDを試してみた結果、データの
登録に成功しました。

しかし、エントリーのADDで落ちているデータが1件あります。(3件中2件成功)
adding new entry "SubManager,dc=tec,dc=jp"
ldapadd: update failed: SubManager,dc=tec,dc=jp
ldap_add: Invalid DN syntax (34)
additional info: invalid DN

LDIFファイルの3件目に上記SubManagerに関してのエントリーを設定していたのですが、
誤って"cn="がSubManagerの前に記述されていなかったので、記述し直しADDをしました。

ldapadd -x -D "cn=SubManager,dc=tec,dc=jp" -W -f /usr/local/etc/openldap/example.ldif
Enter LDAP Password:
ldap_bind: Invalid credentials (49)

しかし、3件目はどうしても登録できません。(SLDAPの再起動後)

rootdnの"Manager"と同階層に"SubManager"が存在するからでしょうか?
それとも権限や認証関係の問題でしょうか?
※サーチの結果は、2件分しか出ておりません。

よろしくお願いします。


be1300cc
ベテラン
会議室デビュー日: 2002/07/04
投稿数: 88
投稿日時: 2003-07-31 15:24
tanaboさん

一応、現状ですが、SEARCH/ADD/MODIFYまでできるようになりました。

3件目のデータがADD/MODIFYできなかった原因はこういうことでした。
・2件目のエントリーがrootdnで設定されている。
・ADD/MODIFYする時は、rootdnを指定してコマンドを入力されていなかった。

この方法で、当然DELETEもできると思い確かめたのですが、DELETEだけなぜかできません。
オプションの設定が間違っているのかもしれませんが。

ldapdelete -x -D "cn=Manager,dc=tec,dc=jp" -r -W -f /usr/local/etc/openldap/example.ldif
ldap_search: Invalid DN syntax (34)
additional info: invalid DN
Delete Result: Invalid DN syntax (34)
Additional info: invalid DN

よろしくお願いします。
be1300cc
ベテラン
会議室デビュー日: 2002/07/04
投稿数: 88
投稿日時: 2003-07-31 15:59
tanaboさん

先程のDELETEの件ですが、なんとか上手く削除することができました。
たくさん質問してしまいましたが、ありがとうございました。

スキルアップ/キャリアアップ(JOB@IT)