我已按照说明找到这里直到使用 -ZZ 执行 ldapsearch 为止。问题是在使用 -ZZ 执行 ldapsearch 之后,不再有任何响应。
指南中是否遗漏了任何步骤?此外,我确保已严格遵循每个步骤。
答案1
您的问题可能是缺少“olcTLSCACertificateFile”指令以及 olcTLSCertificateFile 和 olcTLSCertificateKeyFile。将其指向相同的 olcTLSCertificateFile,因为根据我在该文档中看到的内容,您使用的是自签名证书。
olcTLSCACertificateFile: /etc/pki/tls/certs/slapdcert.pem
您还可以使用 ldapsearch 中的调试选项来获取有关错误的更多信息,如下所示:
ldapsearch -d256 <your other parameters here>
检查“man slapd.conf”中的 loglevel 指令以了解有关指定调试级别的更多信息。
答案2
显然,问题源于 OpenLDAP 对 Mozilla NSS 的 certutil 的使用。
似乎没有响应,因为证书数据库没有与 cn=config.ldif 的 olcTLSCertificateFile 属性中指示的名称相同的证书。默认名称为“OpenLDAP Server”。
要解决这个问题,只需查找为 LDAP 服务器生成自签名证书的 generate-server-cert.sh 脚本。不要忘记重新启动 LDAP 守护程序以使更改生效。
答案3
我的机器也遇到了同样的问题,最后我终于弄清楚了问题所在。我将证书文件配置为 olcTLSCACertificateFile,该文件包含两个证书:一个是根 CA 的证书,另一个是 SubCA 的证书。看来 slapd 无法解析该文件并停止工作。slapd 没有给出任何提示,也没有明确的错误消息。
我希望这个提示能够在遇到同样麻烦时帮助到人们。