【发布时间】:2014-01-08 21:03:46
【问题描述】:
尝试配置 PHP 应用程序以安全地针对远程 LDAP 服务器进行身份验证,但遇到了困难。 ldap 工具已安装,我可以连接到远程 LDAP 服务器,但检查 error_log,我看到了
Unable to bind to server: Can't contact LDAP server
这是由在我的应用程序中调用 ldap_bind 触发的。 ldap_connect 不返回错误。我已经验证我可以使用以下方式连接到 ldap 服务器:
openssl s_client -connect ldap.service.company.com:636
SSL-Session:
Protocol : TLSv1.2
Cipher : AES256-SHA
Session-ID: (snip)
Session-ID-ctx:
Master-Key: (snip)
Key-Arg : None
Krb5 Principal: None
PSK identity: None
PSK identity hint: None
Start Time: 1389213908
Timeout : 300 (sec)
Verify return code: 0 (ok)
tcpdump 和 wireshark 被用来监控和分析我的应用程序尝试 LDAP 身份验证时的网络流量。
tcpdump -s 1514 port 636 -w capture_file
wireshark 发现一个致命错误:
TLSv1 Alert (Level: Fatal, Description: Unknown CA)
Apache 的 ssl.conf 配置指向具有正确权限的文件,启动/重启 httpd 时不会显示错误。
帮助/指针表示赞赏。如果我能提供更多数据,请告诉我。
【问题讨论】:
标签: php apache ssl active-directory ldap