无法在LDAP服务器上启用TLS

我想在我的CentOS 7.2 Samba服务器上启用Secure LDAP身份validation…但是我在LDAP服务器上设置了TLS。

编辑:[我从默认存储库安装openldap ]

我目前正在按照这里的教程,而不是手动input设置到configuration文件中,我试图做到“正确”的方式,并使用ldapmodify。 我花了一段时间才明白如何使用这个工具,但是我终于掌握了这个部分。 但是我遇到以下问题。

命令:

ldapmodify -Y EXTERNAL -H ldapi:/// -f TLS.conifg -v 

使用上面的命令来安装下面的LDIF文件我得到下面的错误。

TLS.config:

 dn: olcDatabase={2}hdb,cn=config changetype: modify add: olcTLSCipherSuite olcTLSCipherSuite: HIGH - add: olcTLSCertificateFile olcTLSCertificateFile: /etc/openldap/certs/file.server.org.pem - add: olcTLSCertificateKeyFile olcTLSCertificateKeyFile: /etc/openldap/certs/file.server.org.key.pem 

错误:

 Entry (olcDatabase={2}hdb,cn=config), attribute 'olcTLSCipherSuite' not allowed 

EDIT2:[我同时安装了openSSL和gnuTLS,所以我满足了在这里find的openLDAP文档指定的TLS要求]

编辑3:[我有我的证书在正确的文件夹与我只能猜测是正确的权限,如下所示。

在这里输入图像说明

]

编辑4:分辨率

如以下84104所述,olcTLSconfiguration指令在cn=config文件中寻址,而不在数据库定义本身中寻址。

我成功地configuration了TLS指令,并开始创build我的条目。

感谢您的帮助!

olcTLS*属性应用于cn=config (通用服务器configuration),而不是任何特定数据库,例如olcDatabase={2}hdb,cn=config

 $ ldapsearch -b cn=config '(|(olcTLSCertificateFile=*)(olcTLSCertificateKeyFile=*)(olcTLSCipherSuite=*))' olcTLSCertificateFile olcTLSCertificateKeyFile olcTLSCipherSuite olcTLSProtocolMin dn: cn=config olcTLSCertificateFile: /etc/openldap/ssl/ldap.cert olcTLSCertificateKeyFile: /etc/openldap/ssl/ldap.key olcTLSCipherSuite: HIGH:!aNull:!MD5:@STRENGTH olcTLSProtocolMin: 3.1