PAMauthentication问题

我正在使用此模块使用pam进行身份validation: http : //code.google.com/p/web2py/source/browse/gluon/contrib/pam.py

我可以调用authenticate('username','password')并返回True / False。 它适用于任何“用户名”,但“根”。 我的猜测是,在PAM中有一个安全限制,不允许检查root密码。

我需要能够检查根密码。 有什么我可以在pam.conf或其他地方去改变这个限制吗?

我找到了你的问题的答案,问题是在默认的服务。

当你调用函数authenticate('用户名','密码')确保你也传递了一个合适的服务。 如认证('用户名','密码','passwd'),或者你可以在/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

我有同样的问题根没有得到认证。 这是修复

如果您使用服务“登录”它不会为根工作。 使用,

 #authenticate('username','password',service='system-auth')