我有一个 Cluster OpenLDAP 设置,其中有 2 个 OpenLDAP 服务器在配置和数据上运行 syncrepl,为运行各种嵌入式操作系统的特定系统提供 LDAP 身份验证。
现在,我被要求添加一个消费者副本,该副本包含来自集群设置的用户和组的子集,并在远程站点上运行。
我使用 Ubuntu 文档作为参考。 https://ubuntu.com/server/docs/service-ldap-replication
提供者和消费者根据文档具有所需的索引。
消费者上的 SyncRepl 配置。
dn:olcDatabase={1}mdb,cn=config changetype:修改添加:olcSyncrepl olcSyncrepl:rid=123 provider=ldap://DNSNAME.Cluster.Ldap bindmethod=simple binddn="cn=admin,dc=ldap,dc=test" credentials=secret searchbase="dc=ldap,dc=test" schemachecking=on type=refreshOnly interval=00:00:05:00
问题是,在我重新启动 SLAPD 服务之前,组成员身份的更改不会同步。
我尝试使用过滤器、授予消费者在集群上可以读取的内容的权限,或者只是复制整个数据库。
有什么可以指出我可能遗漏了什么吗?
答案1
这不是您问的问题,但是,您发布的问题要求您在提供商和消费者之间链接的任何内容上发送明文密码,并且看起来您正在使用可能是 olcRoot 的东西来这样做。可能至少需要一些 TLS。
使用type=refreshAndPersist
或等待您的设置interval
(看起来是 5 分钟)。您可能希望将设置retry
为一般措施,但特别是如果您最终使用 refreshAndPresist。
如果你尚未记录,那么现在是时候开始了。
`/etc/rsyslog.d/slapd.conf`
# Don't forget to restart rsyslog after adding this.
# You'll also need an appropriate olcLogLevel. E.g., olcLoglevel: config sync
local4.* /var/log/syslog