使用pam_exec的Linux自定义身份验证
我很难在hpw上找到一个使用pam_exec运行外部程序的示例,该程序将在用户登录时对用户进行身份验证 我的pam.d文件中有以下内容使用pam_exec的Linux自定义身份验证,linux,pam,Linux,Pam,我很难在hpw上找到一个使用pam_exec运行外部程序的示例,该程序将在用户登录时对用户进行身份验证 我的pam.d文件中有以下内容 auth required pam_exec.so debug log=/tmp/aa /path/to/myscript 我的脚本应该包含哪些内容来允许或禁止身份验证?pam\u exec将简单地检查脚本的退出代码。如果不等于零,您将拒绝授权。针对以下情况: 在我的例子中,auth脚本是正常的,但是PAM在account阶段失败了: authenticat
auth required pam_exec.so debug log=/tmp/aa /path/to/myscript
我的脚本应该包含哪些内容来允许或禁止身份验证?pam\u exec将简单地检查脚本的退出代码。如果不等于零,您将拒绝授权。针对以下情况: 在我的例子中,auth脚本是正常的,但是PAM在
account
阶段失败了:
authentication: pam_unix(postgresql:account): could not identify user (from getpwnam(myuser))
这将记录到系统日志(如果您正在docker中修补PAM,请将-v/dev/log:/dev/log
传递到docker run
以查看主机系统日志中的PAM系统日志消息)
解决方案是将以下内容添加到pam.d文件中:
account sufficient pam_permit.so
我的脚本退出时状态为0,但PAM仍然拒绝身份验证,状态为
0:NO“authentication failed”