python-pam 不工作...如何挖掘错误?

python-pam 不工作...如何挖掘错误?

我有一个 Django 应用程序,用户应该能够根据系统的影子数据库登录。我发现登录后端使用python-pam,据我所知。虽然安装前者可以在我的本地计算机(Arch linux)上登录,但它不能在我希望运行应用程序的服务器(Debian Squeeze)上登录。

问题是,我不知道如何挖掘错误。身份验证仅返回 false,并且我在系统上找不到 PAM 库的任何日志文件。你会从哪里开始挖掘?

更新:我发现 /var/log/auth.log 由 pam 使用。尝试登录时出现以下内容。 (oli 是我的用户名):

Jan  4 15:09:13 pc13620 python: pam_tally(login:auth): unknown option: pam_faildelay.so
Jan  4 15:09:13 pc13620 python: pam_tally(login:auth): unknown option: delay=3000000
Jan  4 15:09:13 pc13620 python: pam_tally(login:auth): Error opening /var/log/faillog for update
Jan  4 15:09:13 pc13620 unix_chkpwd[8070]: check pass; user unknown
Jan  4 15:09:13 pc13620 unix_chkpwd[8070]: password check failed for user (oli)
Jan  4 15:09:13 pc13620 python: pam_unix(login:auth): authentication failure; logname=  uid=33 euid=33 tty= ruser= rhost=  user=oli
Jan  4 15:09:13 pc13620 unix_chkpwd[8071]: check pass; user unknown
Jan  4 15:09:13 pc13620 unix_chkpwd[8071]: password check failed for user (oli)

答案1

我通过libpam-unix2从 debian backports 安装并将以下行插入到中解决了这个问题/etc/pam.d/login

session required pam_unix2.so
auth required pam_unix2.so nullok
account required pam_unix2.so

相关内容