OpenLDAPツールのldapsearch
を使用して、会社のActiveDirectoryで電子メールと電話番号を検索しています。このクエリは、NTLM認証を使用してLinuxウィキをセットアップできるように、ドメインに対して認証できることを確認するためのテストです。私の理論では、情報をADに正常に照会できれば、自分のWikiをADに対して認証できるようになります(私は ActiveDirectoryの下にmoin wikiを設定するための手順 )。
問題は、ldapsearch
クエリを正しく取得できないように見えることです。 _-D
_は_-D "Americas\John_Marsharll"
_のようなものでなければならないことを示す多くのチュートリアルをネット上で見ました。ただし、_Americas\John_Marshall
_を使用すると、ldap_bind: Invalid credentials (49)
エラーメッセージが表示され続けます。意味のある結果が得られるのは、以下のパラメーターを使用してクエリを実行したときだけです。しかし、それでもメールや電話番号の入手方法がわかりません。
_[John_Marshall@WN7-BG3YSM1 ~]$ ldapsearch -x -h 10.1.1.1 \
-b "cn=Users,dc=Americas" mail telephonenumber -D "cn=John_Marshall,dc=Americas"
# extended LDIF
#
# LDAPv3
# base <cn=Users,dc=Americas> with scope subtree
# filter: (objectclass=*)
# requesting: mail telephonenumber -D cn=John_Marshall,dc=Americas
#
# search result
search: 2
result: 32 No such object
# numResponses: 1
[John_Marshall@WN7-BG3YSM1 ~]$
_
上記のldapsearch
クエリで私が間違っていることについて誰かが私にポインタを教えてもらえますか? AD ldapサーバーは10.1.1.1で、ADドメインは「南北アメリカ」です。
コメントの情報とWolfgangの回答を使用して、解決策をまとめることができましたが、そこに到達するのはかなりうまくいきませんでした...
_ldp.exe
_は私にはあまり役に立ちませんでした。ただし、Outlookが認証したサーバーのスニッフィングを開始し、クエリでそのIPアドレスを置き換えました。突然、正しい認証が得られ、_ldapsearch -x -h <new_ip_addr> -D "Americas\John_Marshall" -W -b "dc=MyCompanyName,dc=com"
_を使用してクエリを実行しました。このクエリの結果(基本的には、企業のLDAPディレクトリの多くの生データダンプでした)により、_-b
_パラメーター(検索ベース)を絞り込むことができました。
さて、これで間違っている可能性のあるいくつかのことがあります:
単純な認証を指定していますが、パスワードを指定しておらず、コマンドラインからパスワードを収集するようにldapsearchに指示していません。ユーザーJohn_Marshallにはパスワードがありませんか?彼が持っている場合、どういうわけかそれを提供する必要があります。 -w <passsword>
または-W
を指定します(プロンプトでパスワードを入力するため)。
ユーザーは本当にcn=John_Marshall,dc=Americas
ですか?私たちのADでは、例として、自分のbinddnは "dn: CN=Wolfgang Schulze-Zachau,CN=Users,DC=aminocom,DC=com
"になります。
「cn=John_Marshall,dc=Americas
」のbinddnは可能ですが、私には少し短いように見えます。もちろん、これはすべてADの構成方法によって異なります。これが本当にそのユーザーのDNであることを確認できますか? ADユーザーとコンピューターを見ると、そのユーザーにつながるツリー項目の完全なリストは何ですか?
フィルターを指定しない場合、検索ベースにあるすべてのアイテムのリストが表示されます。これは非常に長いリストになる可能性があります。
うまくいった呪文は次のとおりです。
[John_Marshall@WN7-BG3YSM1 ~]$ ldapsearch -x -h <new_ip_addr> \
-D "Americas\John_Marshall" -W \
-b "cn=John_Marshall,ou=users,ou=austin,dc=amer,dc=MyComanyName,dc=com" \
mail telephonenumber ""