Bloqueando e desbloqueando falhas de login em SSH usando o pam_tally2

Como configurar o bloqueio automático de login em caso de falhas. Com esse pequeno tutorial você poderá usar um módulo chamado pam_tally2 para bloquear, por exemplo, tentativas de brute force no seu servidor. Este tutorial é focado em distribuições Red Hat/CentOS, porém pode ser facilmente adaptado a qualquer distribuição.

[ Hits: 11.523 ]

Por: Humberto Júnior em 15/01/2015 | Blog: http://mundonix.wordpress.com


O pam_tally2



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:

Linux: Bloqueando e Desbloqueando fahas de Login em SSH usando o pam_tally2
/etc/pam.d/system-auth
Linux: Bloqueando e Desbloqueando fahas de Login em SSH usando o pam_tally2
/etc/pam.d/password-auth
Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. O pam_tally2
   3. Testando a implementação
Outros artigos deste autor

Ubuntu 12.04 autenticando no Active Directory com Samba/Kerberos/Winbind

CoreOS no VirtualBox

Leitura recomendada

Como forçar alteração de senha de usuário no próximo login no Linux

Entenda o que é Hardening

Vazamento de informações vitais via "HP Operations Manager Perfd"

Data Recovery em dispositivos e partições formatadas com Linux

TOR: A Internet sem rastreabilidade

  
Comentários
[1] Comentário enviado por azk em 16/01/2015 - 04:26h

ótimo artigo!
favoritado..
;-))

[2] Comentário enviado por fabio em 16/01/2015 - 05:34h

Bem interessante mesmo! A princípio não consegui fazer funcionar em Debian, mas assim que tiver um tempo vou ler a man page do módulo. Em Debian e derivados parece que o arquivo a ser alterado é o /etc/pam.d/login.

[3] Comentário enviado por Tacioandrade em 19/02/2015 - 04:50h


Muito interessante o pam_tall2, não conhecia essa ferramenta, sempre utilizei o fail2ban que também funciona muito bem e tem suporte a praticamente tudo que se pode imaginar, desde FTP, apache, etc, porem gostei da forma de audição dessa ferramenta, bem interessante mesmo, quando tiver um tempo vou testa-la em homologação e ver se vale a pena alterar em novos servidores que implementar ou não.

Um forte abraço e valeu pelo artigo.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts