PAM 身份验证问题
Posted
技术标签:
【中文标题】PAM 身份验证问题【英文标题】:PAM authentication problem 【发布时间】:2011-02-14 08:56:01 【问题描述】:我正在使用此模块通过 pam 进行身份验证: http://code.google.com/p/web2py/source/browse/gluon/contrib/pam.py
我可以调用 authenticate('username','password') 并返回 True/False。它适用于除“root”以外的任何“用户名”。我的猜测是 PAM 中有一个安全限制,不允许检查 root 密码。
我需要能够检查 root 密码。我可以在 pam.conf 或其他地方更改什么来消除此限制吗?
【问题讨论】:
【参考方案1】:我找到了您问题的答案,问题出在默认服务中。
当您调用函数 authenticate('username','password') 时,请确保您也传递了适当的服务。 像验证('用户名','密码','密码') 或者您可以在 /etc/pam.d/ 下添加自定义配置
这是来自 webmin 项目的示例
#%PAM-1.0
auth required pam_unix.so nullok
account required pam_unix.so
session required pam_unix.so
在 /etc/pam.d/ 下的文件中写入前面的行,例如将其命名为“myconfig”,然后将其名称传递给函数,它会起作用(它对我有用):D
【讨论】:
【参考方案2】:我遇到了同样的问题,root 没有通过身份验证。这是解决方法。
如果您使用“登录”服务,它不适用于 root。使用,
#authenticate('username','password',service='system-auth')
【讨论】:
谢谢,它对我有用,我们的身份验证不是基于本地文件。【参考方案3】:如果它是一个运行 ssh 服务器的系统并且应该为 root 工作,你可以使用 sshd 配置。
认证('root','password',service='sshd')
【讨论】:
以上是关于PAM 身份验证问题的主要内容,如果未能解决你的问题,请参考以下文章