
ldapsearch について少し困惑しています... AD 認証を使用してクラウドを構成する必要があります。
これはうまく機能している
ldapsearch -h server -p 389 -x -D 'admin.test' -w 'xxx' -b 'cn=admin.test,cn=users,dc=domain,dc=com'
しかし、セキュリティを強化したいので、ldaps を試してみます。
これは動作しています:
> ldapsearch -H ldaps://server -x -D 'admin.test' -w 'xxx' -b 'cn=admin.test,cn=users,dc=domain,dc=com'
そしてこれも:
> ldapsearch -H ldaps://server:636 -x -D 'admin.test' -w 'xxx' -b 'cn=admin.test,cn=users,dc=domain,dc=com'
しかし、これは機能しません。
ldapsearch -h server -p 636 -x -D 'admin.test' -w 'xxx' -b 'cn=admin.test,cn=users,dc=domain,dc=com' -v
ldap_initialize( ldap://srv-dc01.get.com:636 )
ldap_result: Can't contact LDAP server (-1)
何が起こっているのか分かりません。クラウドは URI ではなく URL を必要としています。 もう一つの質問ですが、ldap をブロックして、ldaps を動作させることは可能ですか?
OS: Linux CentOS 7、selinux Enforced DC はサーバー 2008 R2 上にあります。
どうもありがとうございました。アレクサンドルより
答え1
アップデート:
からこのページどうやら
完全修飾ドメイン名は常に必要-h オプションを使用します。これにより、中間者攻撃を防止できます。
そして、
ldaps プロトコルの使用はサポートされていますが、非推奨です。
さらに詳しくman ldapsearch
:
-h: LDAP サーバーが実行されている代替ホストを指定します。-H を優先して非推奨。
安全な接続のみを許可するには、ここまたは、別の簡単な解決策は iptable ルールです。
iptables -A OUTPUT -p tcp --dport 389 -j DROP
iptables -A INPUT -p tcp --destination-port 389 -j DROP
答え2
ありがとうございます。-Z と -ZZ で試してみました。
ldapsearch -h server -p 636 -x -D 'admin.test' -w 'xxx' -b cn=admin.test,cn=users,dc=domain,dc=com' -v -Z
ldap_initialize( ldap://server.domain.com:636 )
ldap_start_tls: Can't contact LDAP server (-1)
ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)
-ZZ を使用すると、ldap_sasl_bind(SIMPLE) がない場合と同じエラー メッセージが表示されます: LDAP サーバーに接続できません (-1)
おっしゃる通り、このコマンドでは適切なプロトコルは開始されません。これを強制する方法はありますか?