我使用pam_access和/etc/security/access.conf来限制谁可以login到我的Rhel 6.5主机。
我有一个具有不同用户群的LDAP服务器,安全人员想要一个谁可以login的列表。
我需要一个可缩放的方式来检查一个帐户是否可以login到主机。 getent密码,身份证,手指,组和我试过的每一个工具返回相同的输出,如果一个帐户被限制login或不。 passwd -S似乎不适用于LDAP帐户。
有没有办法来检查给定的帐户是否有login权限? 在Solaris上,如果用户或networking组不在/ etc / passwd中,那么这些工具都不能识别受限帐户,但在Linux上似乎完全相反。
谢谢!
编辑:这是/etc/pam.d/system-auth的帐户部分: account required pam_access.so account required pam_unix.so broken_shadow account sufficient pam_localuser.so account sufficient pam_succeed_if.so uid < 500 quiet account [default=bad success=ok user_unknown=ignore] pam_krb5.so account required pam_permit.so
我的木偶configuration只能做以下可能改变pam设置。 /usr/sbin/authconfig --enablemkhomedir --updateall /usr/sbin/authconfig --enablekrb5 --updateall /usr/sbin/authconfig --enablepamaccess --updateall /usr/sbin/authconfig --enablesssd --updateall /usr/sbin/authconfig --nisdomain=domainname.corp --updateall my /etc/security/access.conf + : root : ALL .... all system accounts + : @ngunix_admins : ALL - : ALL : ALL我的netgroup getent netgroup ngunix_admins ngunix_admins ( ,danw,domainname.corp)我在ngunix_adminsnetworking组,所以这是有道理的% id danw uid=355400001(danw) gid=355400001(danw) groups=355400001(danw) % getent passwd danw danw:*:355400001:355400001:unixadmin:/home/danw:/bin/bash但这个其他用户不在ngunix_adminsnetworking组中,所以我需要一些方法来确定他不能loginid testuser uid=355400003(testuser) gid=355400003(testuser) groups=355400003(testuser) getent passwd testuser testuser:*:355400003:355400003:first last:/home/testuser:/bin/bash第二编辑:澄清我没有调整login权限,但是tr 要报告审计准入情况。
我最近不得不执行一个非常相似的PCI审计(谁可以login到这些系统以及他们的权限是什么),所以对于你要在这里完成的任务有一个很好的感觉。 该方法因环境而异,取决于如何configurationPAM和LDAP。
以下因素似乎适用于您的环境:
passwd数据库( getent passwd )包含绝对不允许访问系统的用户。 shadow限制。 有时候,无论如何。 你已经启用了broken_shadow 。 pam_access限制,这大大降低了find一个一体化工具的可能性,而这个工具不会实际执行pam_acct_mgmt的调用) 如果没有testingPAM堆栈的实用程序,我将把这个任务的复杂性评估为“高耗时”。 pamtester看起来会做这项工作。 您需要遍历getent passwd每个用户并执行后validation记帐检查:
pamtester sshd $user acct_mgmt
这假设你只需要通过sshtesting访问权限。 如果你需要testing更多,那就这样做。 查看你configuration的服务的/etc/pam.d并审核任何必要的。
(我对最初的答案表示歉意,我最后的努力更注重sudo审计,而不是PAM审计,我太过于“一切尽在掌握”)。