使用 SSSD 将系统用户添加到 LDAP 组

der*_*ert 6 ldap authentication group sssd

我们的 LDAP 服务器正在运行 RFC 2307 组(memberuid包含用户名,而不是 DN)。随着我们的老nscd/ nss_ldap/pam_ldap设置,你可以列出一个非LDAP用户(从系统用户/etc/passwd在LDAP组)memberuid属性,并且该系统用户将是该组的成员。

但是,在我升级到SSSD 的机器上,这不再有效:SSSD 只是从成员列表中删除非 LDAP 用户。

我已经通过以用户身份登录并使用id以及运行.getent group group

这是我的sssd.conf(对一些细节进行了编辑并明确标记)

[sssd]
config_file_version = 2
services = nss, pam
domains = REDACTED.net

[nss]
# defaults are OK

[pam]
# defaults are OK

[domain/REDACTED.net]
enumerate = true
id_provider = ldap
auth_provider = ldap
access_provider = ldap
chpass_provider = ldap

ldap_uri = _srv_
ldap_chpass_uri = ldap://haruhi.REDACTED.net
ldap_search_base = dc=REDACTED,dc=net?subtree?
ldap_schema = rfc2307
ldap_tls_cacert = /usr/local/share/ca-certificates/REDACTED-CA.crt
ldap_id_use_start_tls = true
ldap_pwd_policy = shadow

ldap_access_filter = memberOf=cn=UNIX Users,ou=Policies,dc=REDACTED,dc=net
ldap_access_order = filter, authorized_service, host

ldap_default_bind_dn = uid=haruhi,ou=Machines,dc=REDACTED,dc=net
ldap_default_authtok = VERY_REDACTED
Run Code Online (Sandbox Code Playgroud)

/etc/nsswitch.conf 有关于 passwd/group/shadow 的无聊条目:

passwd:         compat ldap sss
group:          compat ldap sss
shadow:         compat sss
Run Code Online (Sandbox Code Playgroud)

(ldap 仍然在那里,但它实际上不再安装在系统上)

另外,我怀疑这很重要(因为我在其他机器上看到了相同的行为),但是这台机器——Haruhi——也是主 LDAP 服务器,运行 OpenLDAP。

如何将 SSSD 配置为从 LDAP 组中删除系统用户?

And*_*ndy 6

这是在 sssd 1.9.5 中启用的,方法是将 sssd.conf 设置为包括:

ldap_rfc2307_fallback_to_local_users = true
Run Code Online (Sandbox Code Playgroud)

https://fedorahosted.org/sssd/wiki/Releases/Notes-1.9.5