我已将 PAM 与 LDAP 身份验证集成。问:如何限制某些用户登录某些 Linux 服务器。
例如 - 我们在 Org 中将 100 台 Linux 服务器与 PAM LDAP 身份验证集成在一起,并且 LDAP 中大约有 600 个用户,现在我们需要将一些帐户限制到一些 Linux 服务器。目前,所有用户都可以登录到所有 Linux 服务器。
如果您有此问题的解决方案,请告诉我。请与我分享解决此问题的步骤。谢谢
答案1
在 ldap 中,您可以设置可以登录的主机。您还可以创建组并设置特定系统的登录访问权限。
答案2
如果只有少数用户登录,你可以将其附加到 /etc/passwd 中
+user1::::::/bin/bash
+user2::::::/bin/bash
+::::LDAP user::/usr/sbin/nologin
这将用“LDAP 用户”覆盖 GECOS,并且除了用户 {1,2} 之外的所有人都有 /usr/sbin/nologin 。
另一个解决方案是/etc/security/access.conf
查看这篇文章:https://serverfault.com/a/229131/11340
答案3
我用固态存储系统然后在 conf 文件中放入一个 ldap_access_filter 行,如下所示:
...
id_provider = ldap
auth_provider = krb5
chpass_provider = krb5
access_provider = ldap
...
ldap_access_filter = memberOf=CN=IT,CN=Users,DC=example,DC=com
答案4
严格来说,这是一个访问控制问题,而不是身份验证问题。最好的解决方案是使用pam_access
。请参阅访问.conf(5)手册页。您应该在 LDAP 中创建组或网络组,然后包括
+: (groupname) @netgroupname: ALL
-: ALL: ALL
在/etc/security/access.conf
。