![如何在使用 LDAP 连接到 AD 服务器的 Linux 服务器上启用组枚举?](https://linux22.com/image/547309/%E5%A6%82%E4%BD%95%E5%9C%A8%E4%BD%BF%E7%94%A8%20LDAP%20%E8%BF%9E%E6%8E%A5%E5%88%B0%20AD%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%20Linux%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E5%90%AF%E7%94%A8%E7%BB%84%E6%9E%9A%E4%B8%BE%EF%BC%9F.png)
我有一组服务器需要根据中央 Active Directory 林进行身份验证。AD 管理员已经安装了 UNIX AD 扩展和 NIS 扩展,因此我有很多 LDAP 属性可供使用。
经过身份验证的绑定和用户登录均已正常运行。我缺少的一点是让组枚举正常工作的魔法。
是否有人有任何特殊的/etc/ldap.conf
或者可能是 PAM 魔法可以供我使用以使群组正常工作?
以机智:
[root@hostname ~]# groups username
id: cannot find name for group ID 1768498755
[root@hostname ~]#
(该 ID 是通过 gidNumber 指定的默认组。)
谢谢!
答案1
添加至/etc/nsswitch.conf:
(如果需要的话:
passwd: files sss
group: files sss
)
安装 sssd 并将其配置为搜索适当的空间(/etc/sssd/sssd.conf
):
[sssd]
domains = LDAP
[domains/LDAP]
ldap_schema = rfc2307bis
id_provider = ldap
auth_provider = ldap
ldap_uri = ldap://localhost
ldap_search_base = ou=users,o=company
ldap_user_search_base = ou=users,o=company
ldap_group_search_base = ou=groups,o=company
ldap_tls_reqcert = allow
cache_credentials = true
enumerate = true
min_id = 1
答案2
尝试添加以下内容/etc/ldap.conf
:
nss_base_group ou=your,o=base
并确保您还查看了 ldap 以映射 gid。应该/etc/nsswitch.conf
包含类似以下内容的内容:
group: files ldap