有没有人设置这样的配置?这不适合我.
我在Ubuntu 12.04上安装了nginx-extras(它是用PAM模块构建的),并添加到站点配置中:
location ^~ /restricted_place/ {
auth_pam "Please specify login and password from main_site";
auth_pam_service_name "nginx";
}
之后,在/etc/pam.d/nginx中:
auth required pam_script.so dir=/path/to/my/auth_scripts
并写了simplest / path / to / my / auth_scripts / pam_script_auth(我也尝试编写复杂的脚本)
#!/bin/sh
exit 0 # should allow anyone
不起作用.该脚本已启动(我编写了完整的功能脚本,成功执行,检查凭据,写入自己的日志并返回正确的退出代码,执行时间明显长).但是没有授予访问权限,只有被拒绝.
在/var/log/nginx/error.log中出现以下行:
2012/09/13 10:44:42 [alert] 1666#0: waitpid() failed (10: No child processes)
如果我在/etc/pam.d/nginx中指定:
auth required pam_unix.so
并授予www-data用户权限读取/ etc / shadow,unix授权正常.但脚本验证不起作用.
我无法理解,麻烦在哪里.它是在nginx模块中还是在pam_script模块中?
最佳答案
nginx PAM module还运行PAM帐户操作,因此您还需要配置它.您可以使用pam_permit模块始终成功:
auth required pam_script.so dir=/path/to/my/auth_scripts
account required pam_permit.so
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。