我正在尝试将 FreeIPA 与 Active Directory 集成,以便按照本指南为 Windows 和 Linux 用户提供单点登录。
我已成功创建“winsync”协议并将 AD 数据加载到 FreeIPA,但我正在努力从指南的这一部分设置 Windows 密码同步。
当用户更改密码时,我在域控制器上的 389 PassSync 插件日志中看到以下内容:
06/17/16 08:47:32: Backoff time expired. Attempting sync
06/17/16 08:47:32: Password list has 1 entries
06/17/16 08:47:32: Attempting to sync password for some.user
06/17/16 08:47:32: Searching for (ntuserdomainid=some.user)
06/17/16 08:47:32: Ldap error in QueryUsername
34: Invalid DN syntax
06/17/16 08:47:32: Deferring password change for some.user
06/17/16 08:47:32: Backing off for 1024000ms
当我从 CLI 运行查询时,使用 PassSync 插件使用的相同用户和密码,它是成功的:
$ ldapsearch -x -h ldaps://localhost -p 636 -D 'uid=passsync,cn=sysaccounts,cn=etc,dc=dc,my=domain,dc=com' -w 'password' -b 'cn=users,cn=accounts,dc=my,dc=domain,dc=com' '(ntuserdomainid=some.user)'
谁能指出我做错了什么?
我想通了,我会发布我的发现来帮助其他有类似问题的人。
在 IPA 服务器上,我找到了 389-ds 日志:
/var/log/dirsrv/slapd-HOSTNAME/access
查看日志中的条目,我注意到 DN 中有一些额外的字符对应于“搜索库”。我让 Windows 管理员将他的 RDP 会话共享给 DC,并查看了
HKEY_LOCAL_MACHINE\SOFTWARE\PasswordSync
.在这里,我注意到“搜索库”键中的相同字符。我认为这些额外的字符是从文档中意外复制粘贴的。
删除它们并重新启动服务已解决问题。