为了学习PAM的基础知识,我编写了一个高度宽容的模块,它为所有检查(auth,account,password,session)返回PAM_SUCCESS。所以从理论上讲,一个人应该能够使用任何用户名登录,即使那些未在/ etc / passwd中列出的用户名,对吗?
然而,看起来/ bin / login会自行执行帐户检查!如何禁用此功能,以便我可以让任何用户名登录? (纯粹用于理论目的)。
我的模块的日志:
pam_sm_authenticate:AUTH request for notinpasswd, allowing it
pam_sm_acct_mgmt:ACCT request, allowing it
Invalid user name "notinpasswd" in pam_open:670. Abort. -- printed by /bin/login
这是我的pam.d /其他配置:
auth required pam_open.so
account required pam_open.so
password required pam_open.so
session required pam_open.so
答案 0 :(得分:1)
考虑到用户必须拥有可用的shell,可能值得使用真实的用户名。你试过吗?如果是这样的话。我知道并且生病了,但是我需要一个有效的shell和用户。