我想创建一个 pam.d 配置文件,用于测试用户是否有帐户,但不测试密码。我该怎么做?我试过使用 nullok,但无法让它工作。我不确定这是否重要,但我正在尝试使用 JPam 来执行此操作,JPam 是一个 Java API,它使用本机库在 RH5.2 主机上调用 pam。我对 pam 完全陌生。
答案1
您可以使用 pam_permit 模块来执行此操作。
在您想要删除密码检查的服务的 pam.d 文件中,您可以在顶部输入:
auth sufficient pam_permit.so
您应该非常小心地使用 pam_permit,因为它会删除密码。您可能不想将其用作通用 pam 文件的一部分,或者任何允许远程访问的东西(如果计算机可通过网络访问)。基本上,请确保您在使用它时知道自己在做什么,并明白您可能会打开盒子遭到黑客攻击。
答案2
另一种方法是修改 /etc/pam.d 中的 system-auth,在 auth 部分的 pam_unix.so 下添加以下行。
auth sufficient pam_succees_if so uid eq UID
其中 UID 更改为用户的实际 uid(号码)。