我正在编写一个在 PHP 中使用 PAM 身份验证的脚本。当我尝试进行身份验证时,拥有该文件的用户可以正常工作,但任何其他尝试登录的用户都将失败。
如何让任何拥有系统帐户的用户进行身份验证,而不仅仅是拥有该文件的用户?
这是我的 php 的 pam 配置的副本:
auth optional pam_faildelay.so delay=3000000
@include common-auth
@include common-account
@include common-session
common-auth 包含:
auth [success=1 default=ignore] pam_unix.so nullok_secure
auth requisite pam_deny.so
auth required pam_permit.so
普通账户包含:
account [success=1 new_authtok_reqd=done default=ignore] pam_unix.so
account requisite pam_deny.so
account required pam_permit.so
公共会话包含:
session [default=1] pam_permit.so
session requisite pam_deny.so
session required pam_permit.so
session required pam_unix.so
这是我如何发出身份验证请求的示例:
if(pam_auth($username,$password)){
displayMappings();
}
else{
echo("authentication failure. Please try again.");
}