Ldapsearchを使用してActive Directoryドメインコントローラーに正常に接続して検索できます。ユーザー名/パスワード認証を指定するために-x
オプションを使用しています(-W
によってパスワードが指定され、-D
によってユーザー名が指定されています)。
現在、MIT-kerberosドメインからディレクトリをダンプする必要があります。 Kerberosは、認証に使用できる唯一のプロトコルです。 kinit
を使用して、Kerberos TGTチケットを取得できます。私はこれらのコマンドラインを使用しています:
ldapsearch -Y SASL -b "REALM.INC" -H ldap://kerberos_IP_address
-> ldap_sasl_interactive_bind_s: Unknown authentication method (-6)
additional info: SASL(-4): no mechanism available: No worthy mechs found
ldapsearch -o "mech=GSSAPI" ...
-> Invalid general option name: mech
Ldapsearchを使用して、Kerberosで認証するにはどうすればよいですか?
あなたの助けと返信に感謝します
libsasl2-modules-gssapi-mit
パッケージ。
なし:
# ldapsearch -H ldap://dc1 -Y GSSAPI -b 'DC=ad-test,DC=vx'
ldap_sasl_interactive_bind_s: Unknown authentication method (-6)
additional info: SASL(-4): no mechanism available: No worthy mechs found
インストール:
# apt install libsasl2-modules-gssapi-mit
と:
# ldapsearch -H ldap://dc1 -Y GSSAPI -b 'DC=ad-test,DC=vx'
SASL/GSSAPI authentication started
SASL username: [email protected]
SASL SSF: 256
SASL data security layer installed.
...
SASLはデフォルトで有効になっており、互換性のあるメカニズムを自動検出するため、-Y GSSAPI
も必要ありません。
# ldapsearch -H ldap://dc1 -b 'DC=ad-test,DC=vx'
SASL/GSSAPI authentication started
SASL username: [email protected]
SASL SSF: 256
SASL data security layer installed.
...
-Y
はSASLメカニズムを指定するために使用されます。これはおそらくGSSAPI
ですが、GSS-SPNEGO
。また、ベースdnはdn構文である必要があります(つまり、dc=example,dc=com
)、ドメイン構文ではありません(example.com
)。
$ ldapsearch -x -b '' -s base supportedSASLMechanisms -H ldap://192.0.2.1/
dn:
supportedSASLMechanisms: GSSAPI
$ ldapsearch -Y GSSAPI -b dc=example,dc=com -H ldap://192.0.2.1/
$ ldapsearch -x -b '' -s base supportedSASLMechanisms -H ldap://192.0.2.2/
dn:
supportedSASLMechanisms: GSS-SPNEGO
supportedSASLMechanisms: GSSAPI
ldapsearchとOSのバージョンに応じて、まずkinitを使用してkerberosに認証し、チケットを "キャッシュ"し、それをkerberos env変数で使用し、次にldapsearchにこの変数を使用させることができます。
kinit -c /tmp/<yourlogin>.cc.tmp <yourlogin>
export KRB5CCNAME=/tmp/<yourlogin>.cc.tmp
ldapsearch -Tx -h <Host> -p <port> -Y GSSAPI -b "dc=example,dc=com" cn=*