ujj*_*ain 6 openldap redhat ldap pam-ldap rhel6
我们将 LDAP 服务器与 Solaris 和 RHEL 服务器一起使用,并计划将更多服务器迁移到 RHEL。但是,我们在所有 Red Hat 服务器上都遇到了 LDAP 问题。
当我键入“getent passwd”时,将显示整个 LDAP 服务器上的所有用户,而不仅仅是有权访问该服务器的用户。通常大约有 10 到 50 人可以访问服务器,因此 Solaris 会打印出这个用户列表,而 Red Hat 会直接打印出 LDAP 中存在的所有用户的列表(大约 650 个)。
我更喜欢 Solaris 上的行为,其中只有有权访问服务器的用户才会以“getent passwd”列出。
如何将 RHEL 配置为仅列出有权访问服务器的用户?
这是默认行为,RHEL 限制使用 PAM 的用户,nss 尝试解析给定 ldap 搜索库中的所有可用用户/组条目。
可能存在这样的情况:系统具有 nfs 挂载,其中包含无权访问计算机的用户拥有的文件,如果所有用户对操作系统可见,您仍然可以解析用户(访问受到 PAM 限制,因此他们不会可以登录)。
您可以使用以下选项之一来更改行为。
使用SSSD,默认情况下不会枚举用户/组。(即;getent passwd 将仅列出本地用户)。
使用 LDAP 过滤器,以便只有所需的用户对计算机可见。仅当存在可用于过滤用户的特定过滤器时(例如:在组上使用 memberof 属性),这才是可能的。
使用兼容模式来过滤用户。
例如:
nsswitch.conf
passwd: files compat
passwd_compat: ldap
in passwd file, add +@netgroup.
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
21068 次 |
最近记录: |