O comando
pam_tally2 é utilizado para bloquear e desbloquear acessos através de contagem de tentativa de acessos.
- Pode resetar o contador quando o login for efetuado com sucesso
- Pode bloquear o acesso se muitas tentativas falharem
O pam_tally2 vem em forma de comando, que pode ser executado diretamente no prompt do usuário (com intuito de auditar determinado usuário) como também ser utilizado com um módulo do PAM, atuando diretamente no modelo de autenticação do servidor e podendo até mesmo bloquear o acesso do próprio usuário root (não recomendado).
Para maiores informações do módulo/programa:
# man pam_tally2
Configurando a autenticação PAM com o pam_tally2.so
O módulo e o programa pam_tally2 já vem por padrão na maioria dos sistemas operacionais
Linux, então não precisaremos nos preocupar (no Red Hat/CentOS) com a instalação do mesmo para funcionamento.
Para iniciar a configuração do módulo no PAM precisaremos editar 2 arquivos e criar um outro como segue abaixo.
Crie um novo arquivo chamado
tallylog:
# touch /var/log/tallylog
Edite o arquivo
system-auth no diretório do PAM:
# vi /etc/pam.d/system-auth
Adicione a linha abaixo logo no início da seção auth:
auth required pam_tally2.so file=/var/log/tallylog deny=3 even_deny_root unlock_time=800
Agora adicione a linha abaixo logo no início da seção account:
account required pam_tally2.so
Faça o mesmo procedimento para o arquivo
password-auth no diretório do PAM:
# vi /etc/pam.d/password-auth
Adicione a linha abaixo logo no início da seção auth:
auth required pam_tally2.so file=/var/log/tallylog deny=3 even_deny_root unlock_time=800
Agora adicione a linha abaixo logo no início da seção account:
account required pam_tally2.so
Argumentos utilizados:
- file=/var/log/tallylog => Arquivo onde serão gravadas as tentativas de acesso (contador) to tally. Esse arquivo foi criado no início.
- deny=3 => O usuário será bloqueado após 3 tentativas falhas de login
- even_deny_root => Irá atuar até mesmo nos acessos do usuário root
- unlock_time=800 => o bloqueio irá permanecer por aproximadamente 13 minutos
Abaixo vemos como ficam nossos arquivos system-auth e password-auth respectivamente:

/etc/pam.d/system-auth

/etc/pam.d/password-auth