python-pam não está funcionando… Como cavar pelo erro?

3

Eu tenho um aplicativo django onde os usuários devem poder fazer o login de acordo com o banco de dados de sombra do sistema. Eu encontrei este login de login que usa python-pam , tanto quanto eu posso dizer. Ao instalar o primeiro faz o login funcionar na minha máquina local (Arch linux) ele não funciona no servidor onde eu quero que o aplicativo seja executado (Debian Squeeze).

O problema é que não sei como descobrir o erro. A autenticação apenas retorna false e não consigo encontrar nenhum arquivo de log para a biblioteca PAM no sistema. Onde você começaria a cavar?

Atualização: descobri que /var/log/auth.log é usado pelo pam. O seguinte aparece ao tentar fazer o login. (oli é meu nome de usuário):

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)
    
por janoliver 04.01.2012 / 14:26

1 resposta

1

Eu resolvi isso instalando libpam-unix2 dos backports do Debian e inserindo as seguintes linhas em /etc/pam.d/login :

session required pam_unix2.so
auth required pam_unix2.so nullok
account required pam_unix2.so
    
por 04.01.2012 / 15:38

Tags