不知何故,我无法configurationslapd来启用对Debian Lenny的ldaps支持。 看起来OpenLDAP是用GnuTLS而不是OpenSSL编译的,这可能是问题的一部分。
我已经将以下选项添加到slapd.conf中:
TLSCipherSuite TLS_RSA_AES_256_CBC_SHA TLSCertificateFile /etc/ssl/certs/myhost.pem TLSCACertificatePath / etc / ssl / certs / TLSCertificateKeyFile /etc/ssl/private/myhost.pem TLSVerifyClient永远不会
和以下到ldap.conf:
URI ldap:/// ldaps:/// TLS_REQCERT永远不会
如果我尝试启动slapd,日志中会出现以下错误:
主要:TLS初始化def ctx失败:-64
难道这个由openssl生成的证书不能被GnuTLS读取吗?
有没有人在Debian上用ldaps支持configurationOpenLDAP? 如果是的话,任何提示如何使其工作将非常感激。
谢谢。
编辑 :find一个工作的TLSCipherSuite。
Openssl和GnuTLS之间的密码名称是不一样的。
示例GnuTLS密码:
slapd.conf: TLSCipherSuite TLS_RSA_AES_256_CBC_SHA
获取GnuTLS密码名称的列表:
$ gnutls-cli -l
并确保“cert”文件是可读的,并由openldap用户拥有。 您也可以将openldap用户添加到ssl-cert组。
问题解决了。
服务器密钥只能由root和组“ssl-cert”读取。 因此,我将用户'openldap'添加到组'ssl-cert',但不pipe怎样,slapd无法读取服务器密钥。 我现在复制密钥,并将其所有权更改为“openldap”,现在可以使用。
这也可能是由于gnutls放弃了对md2和md5algorithm的支持。 请参阅lenny上的gnutls发行说明。