次のように確認できる大企業AD LDAPの証明書チェーンがあります。
$ openssl rehash tmp_cert_dir/
$ echo | openssl s_client -showcerts -connect 10.188.1.101:636 2</dev/null \
| openssl verify -CApath tmp_cert_dir/
stdin: OK
$
したがって、ディレクトリに2つの証明書がある場合は、tmp_cert_dir
LDAPサーバーを認証するのに十分です。
ただし、Commandoを使用すると環境変数はldapsearch
使用できません。LDAPTLS_CACERTDIR
$ LDAPTLS_CACERTDIR=/root/tmp_cert_dir ldapsearch -x -W -D mydomain\\mylogin -H ldaps://10.188.1.101 $SECRET_SEARCH
Enter LDAP Password:
ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)
$
実際に無効にされた証明書認証を使用すると応答し、LDAPTLS_REQCERT
応答を正常に調査します。
$ LDAPTLS_REQCERT=never ldapsearch -x -W -D mydomain\\mylogin -H ldaps://10.188.1.101 $SECRET_SEARCH
Enter LDAP Password:
(<correct answer here>)
以前のインターネット調査では、多くの人がサーバー認証の放棄を提案したことがわかりましたが、私はこの認証を使用したいと思います。
ldapsearch
接続が自動的に失敗するのではなく、エラーメッセージを出力するにはどうすればよいですか?私のLDAPサーバーをどのように認証しますか?