我们有一个 LDAP 服务器,我们使用 phpldapadmin 来管理它。我已经很久没有使用它了,当我尝试使用我的管理员用户登录时,我得到以下信息:
Could not start TLS. (LDAP Server)
Error: Could not start TLS. Please check your LDAP server configuration.
error Unable to connect to LDAP server LDAP Server
Error: Can't contact LDAP server (-1) for user
error Failed to Authenticate to server
Invalid Username or Password.
LDAP 服务器工作正常,我还验证了用户的密码,它是正确的。我可以使用该用户在命令行上的服务器上进行 ldapsearch。
我最近在这台服务器上唯一改变的是一些 iptables 规则。它曾经工作得很好,所以我真的不明白问题出在哪里。我们使用 let's encrypt 证书连接到 ldap 服务器。服务器在 Debian 9 下,phpldapadmin 与 nginx 一起工作。
编辑
我已将 PLA 日志置于调试模式,但我没有得到比以前更多的信息。Nginx 在其日志中也没有给我任何错误。我试过以下命令:
ldapsearch -ZZ -H ldap://ldap.mydomain.com -W -D cn=adminuser,dc=mydomain,dc=com -b dc=mydomain,dc=com
它工作正常。还检查 ssl 连接:
openssl s_client -connect ldap.mydomain.com:636
返回证书。
我不知道 PLA 是否可以读取 ldap.conf
解决方案非常简单,我什至无法考虑。我重新启动了php7.0-fpm,它解决了这个问题。