検索 PHPを使用してLDAPサーバーにバインドしている間にサーバー証明書を無視するためのヘルプが必要です。




php ldap_bind exception (2)

Webブラウザを使用して、ldaps:// ipaddress /をポイントします。

証明書ポップアップボックスが表示されたら、証明書を表示し、証明書チェーンを見て、信頼されたルート(使用されている特定の証明書ではなく、署名した親)を見つけ、その証明書をエクスポートします。 PEMおよびB64形式で保存します。 (バイナリおよびB64エンコード)。

それを使ってそれをPHPのキーストアフォーマットにしてください。 Javaキーストアは簡単です。 PHPが何を使っているのかわからない。

私はPHPを使用してLDAPサーバーにバインドしようとしています。 証明書のエラーを回避できないことを除けば、これはかなり簡単なプロセスです。 Apache Directory Studioを使ってサーバーに接続できるので、私の認証資格情報は問題ありません。 サーバー証明書を自動的に承認する方法はありますか? Apacheディレクトリスタジオで[この証明書を承認]をクリックするのと同じような方法ですか。 セキュリティが良くないことはわかっていますが、現時点ではうまく機能させる必要があるので、後で証明書の問題を解決することができます。

ありがとう


あなたは環境を指定していないので、ここに答えがあります(このサイトの他の場所にあります: ldap_start_tls()を解決するにはどうすればいいですか?PHPではTLS:Connectエラーを起動できません

Linux:クライアントマシン(PHP Webサーバー)でシステムが使用しているldap.confファイルを変更します。RH/ Fedoraでは必要なファイルは/etc/openldap/ldap.conf/etc/ldap.confではなく)システム認証用です... )。 次の行を追加/修正してください。

TLS_REQCERT never

Windows:次のようにシステム環境変数を追加してください。

LDAPTLS_REQCERT=never

またはあなたのPHPコードで、ldap_connectの前に、以下を入れてください:

putenv('LDAPTLS_REQCERT=never');

これらは、クライアントWebサーバーのPHPインスタンスが、証明書のCN (共通名)に対してサーバーのFQDNをチェックしないことを保証します。 仮想IPとその証明書が使用されているクラスタ環境で非常に役立ちます。 しかしこれはまたWebサーバマシン上のOS全体の他のツール/アプリケーションもこれをチェックしないようにするので、あなたの環境がこの変更を許可することを保証してください(高セキュリティ環境はそれを許可しないかもしれません)。





ldap