Eu gostaria de configurar o não. muitas vezes o usuário será solicitado a fornecer a senha (tentativas de autenticação) para login, antes de encerrar a sessão. O PAM suporta este caso? Se sim, você pode me ajudar com a configuração necessária para isso?
Responder1
Existe um módulo de contador de login para PAM chamadopam_tally
que pode ser usado para manter uma contagem de tentativas de login e bloquear tentativas adicionais se um determinado número de tentativas de login falhar.
Exemplo:
No Debian você pode adicionar as seguintes linhas para /etc/pam.d/common-auth
dar aos usuários três tentativas de login antes que a conta seja bloqueada:
auth required pam_tally.so onerr=fail deny=3 no_magic_root
Isso no_magic_root
evita que o usuário root seja bloqueado.
ComoPedroapontado, a unlock_time
opção pode ser usada para especificar um número de segundos após os quais uma conta bloqueada será automaticamente desbloqueada. Ao definir esta opção como 1
, ou seja, bloquear a conta por um segundo, a tentativa de login pode ser abortada após um número especificado de tentativas, permitindo ao usuário tentar novamente (quase) imediatamente.
Adicionar a seguinte linha /etc/pam.d/common-account
redefinirá a contagem de login em um login bem-sucedido:
account required pam_tally.so reset no_magic_root
No Fedora, ambas as linhas podem ser adicionadas ao arquivo /etc/pam.d/system-auth
.
O acesso a uma conta bloqueada user
pode ser restaurado com o pam_tally
utilitário que o acompanha da seguinte forma:
$ pam_tally --user user --reset=0
Responder2
Se você estiver tentando controlar quantas vezes alguém será avisado, em vez de quantas vezes ele poderá falhar na autenticação, poderá ter problemas para gerenciar isso por meio do PAM. Por exemplo, o ssh tem sua própria configuração para isso:
NumberOfPasswordPrompts
Specifies the number of password prompts before giving up. The
argument to this keyword must be an integer. The default is 3.