我已经为 config 数据库和 ldap 数据库工作了 syncrepl,让我们只专注于 ldap 数据库。在这个解决方案中,我们需要在多主配置中的消费者和提供者之间进行加密。
在没有 tls 的情况下我可以正常工作,这是 syncrepl 的非 tls 配置
olcSyncRepl:
rid=003
provider=ldap://<server1>
binddn="cn=ldapadm,dc=test,dc=local"
bindmethod=simple
credentials=password
searchbase="dc=test,dc=local"
type=refreshOnly
interval=00:00:00:30
retry="5 5 300 5"
timeout=1
olcSyncRepl:
rid=004
provider=ldap://<server2>
binddn="cn=ldapadm,dc=test,dc=local"
bindmethod=simple
credentials=password
searchbase="dc=test,dc=local"
type=refreshOnly
interval=00:00:00:30
retry="5 5 300 5"
timeout=1
更新 server1 更新 server2 和更新 server2 更新 server1 一切正常
当尝试用自签名证书替换此配置并使用超过 636 的 ldaps 时,它会失败
这是 ldaps syncrepl 配置
olcSyncRepl:
rid=003
provider=ldaps://<server1>
binddn="cn=ldapadm,dc=test,dc=local"
bindmethod=simple
credentials=password
searchbase="dc=test,dc=local"
tls_cacert=/etc/openldap/certs/IntInfCA.ca.pem
tls_key=/etc/openldap/certs/serevr1
tls_cert=/etc/openldap/certs/server1.cert
type=refreshOnly
interval=00:00:00:10
retry="5 5 300 5"
timeout=1
olcSyncRepl:
rid=004 provider=ldaps://server2
binddn="cn=ldapadm,dc=test,dc=local"
bindmethod=simple
credentials=password
searchbase="dc=test,dc=local"
tls_cacert=/etc/openldap/certs/IntInfCA.ca.pem
tls_key=/etc/openldap/certs/server2
tls_cert=/etc/openldap/certs/server2.cert
type=refreshOnly
interval=00:00:00:10
retry="5 5 300 5"
timeout=1
这不起作用,错误消息
Jan 13 08:16:36 hbtc5003 slapd[32321]: slap_client_connect: URI=ldaps://hbtc5503.test.vocalink.co.uk DN="cn=ldapadm,dc=ips,dc=local" ldap_sasl_bind_s failed (-1)
Jan 13 08:16:36 hbtc5003 slapd[32321]: do_syncrepl: rid=004 rc -1 retrying
Jan 13 08:16:36 hbtc5003 slapd[32321]: conn=1001 fd=23 closed (TLS negotiation failure)
Jan 13 08:17:06 hbtc5003 slapd[32321]: conn=1002 fd=23 ACCEPT from IP=10.105.189.178:46550 (IP=0.0.0.0:636)
Jan 13 08:17:06 hbtc5003 slapd[32321]: conn=1002 fd=23 closed (TLS negotiation failure)
有任何想法吗?