python-pamが機能しない...バグを見つける方法は?

python-pamが機能しない...バグを見つける方法は?

ユーザーがシステムのシャドウデータベースに基づいてログインできる必要があるDjangoアプリがあります。私が見つけたこれログインバックエンドの使用Python - ファーム、私の知る限り。前者をインストールすると、私のローカルコンピュータ(Arch Linux)へのログインには機能しますが、アプリケーションを実行したいサーバー(Debian Squeeze)では機能しません。

問題は、エラーをどのように掘り下げるべきか分からないという点だ。認証はfalseを返し、システムはPAMライブラリのログファイルを見つけることができません。どこで発掘を始めますか?

更新:pamが/var/log/auth.logを使用していることがわかりました。ログインしようとすると、次のメッセージが表示されます。 (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-unix2Debian バックポートからインストールし、次の行を挿入してこの問題を解決しました/etc/pam.d/login

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

関連情報