- dn: cn=config
- changetype: modify
- add: olcTLSCipherSuite
- olcTLSCipherSuite: NORMAL
- -
- add: olcTLSCRLCheck
- olcTLSCRLCheck: none
- -
- add: olcTLSVerifyClient
- olcTLSVerifyClient: never
- -
- add: olcTLSCACertificateFile
- olcTLSCACertificateFile: /etc/ssl/certs/CA.crt
- -
- add: olcTLSCertificateFile
- olcTLSCertificateFile: /etc/ssl/certs/server.pem
- -
- add: olcTLSCertificateKeyFile
- olcTLSCertificateKeyFile: /etc/ssl/private/key.pem
并使用以下LDIF强制客户端连接的TLS用法:
- dn: cn=config
- changetype: modify
- add: olcSecurity
- olcSecurity: tls=1
在此之后,我不能再使用“-Y EXTERNAL”来读取或修改配置架构.例如,如果我运行,我会收到SASL错误:
- $sudo ldapsearch -Q -Y EXTERNAL -H ldapi:/// -b "" -LLL -s base -Z supportedSASLMechanisms
- ldap_sasl_interactive_bind_s: Authentication method not supported (7)
- additional info: SASL(-4): no mechanism available:
如果我检查支持的SASL机制:
- $sudo ldapsearch -x -H ldapi:/// -b "" -LLL -s base -Z supportedSASLMechanisms
- dn:
- supportedSASLMechanisms: DIGEST-MD5
- supportedSASLMechanisms: CRAM-MD5
- supportedSASLMechanisms: NTLM
- supportedSASLMechanisms: PLAIN
- supportedSASLMechanisms: LOGIN
我真的看不到列表中包含的EXTERNAL.我在这里想念的是什么?
这是在Ubuntu-12.04和slapd-2.4.31上.
>停止slapd:服务slapd停止
>将配置数据库转储到文本文件:slapcat -F /etc/ldap/slapd.d -b cn = config -l config.ldif
>将现有的配置数据库移开:mv /etc/ldap/slapd.d{,.old}
>创建一个新的空配置数据库:
mkdir /etc/ldap/slapd.d
chown –reference = / etc / ldap / slapd.d.old /etc/ldap/slapd.d
chmod –reference = / etc / ldap / slapd.d.old /etc/ldap/slapd.d
>编辑转储的config.ldif以删除olcSecurity设置(或将olcRootDN和olcRootPW添加到cn = config,或者您喜欢的任何其他更改)
>将已编辑的LDIF加载到新的空数据库中:slapadd -F /etc/ldap/slapd.d -b cn = config -l config.ldif
(以上假设您的配置位于/etc/ldap/slapd.d,这是Debian和Ubuntu中的默认配置.)
请注意,完整LDIF的slapadd应始终在空数据库中完成;因此,如果您犯了错误并且slapadd失败,请确保在再次尝试之前清除部分数据库.
您可以在the OpenLDAP Admin Guide以及相关手册页中找到更多信息.