PAM:如何在登录期间强制执行 AD 组成员身份

PAM:如何在登录期间强制执行 AD 组成员身份

我们为所有用户(70% Linux,30% Windows)使用 Active Directory(2003 和 2008)。普通用户身份验证工作正常。我现在遇到一种情况,在特定服务器上,我需要限制可以登录 ADS 中特定组的成员的用户。因此,我创建了该组并添加了用户。然后我在 pam_ldap.conf 中设置

pam_groupdb cn=<组>,ou=应用程序,dc=<域>,dc=<tld>

pam_member_attribute 成员

但是,这似乎没有什么区别。我停止了 nscd(以防万一),但我仍然可以使用不属于该组的用户的凭据登录。有人有这方面的经验吗?

还有其他解决方法,但它们相当丑陋,我宁愿不使用这些方法(例如,通过 cron 作业中的 ldapsearch 提取所有用户,然后将它们放入允许的用户列表中,等等)。哦,是的,我可以使用 ldapsearch 很好地看到该组的成员。我也可以使用 ldapsearch 很好地看到各个用户的组成员身份。我已将该服务器上的 sshd 置于调试模式,但日志没有显示任何有用信息。任何指示都将不胜感激。

答案1

我觉得您的设置有拼写错误。我认为 pam_groupdb 应该改为 pam_groupdn。

来自手册:

$ man pam_ldap

...
pam_groupdn 指定用户必须属于的组的可分辨名称,登录授权才能成功。

pam_member_attribute 指定在测试用户是否属于 pam_groupdn 选项中指定的组时使用的属性
。...

相关内容