Fail2Ban uma excelente opção para repelir ataques de força bruta em seu servidor

fail2ban

Um dos vetores de ataque mais comuns contra servidores são as tentativas de login de força bruta. É aqui que os invasores tentam acessar o seu servidor, tentando combinações infinitas de nomes de usuário e senhas.

Para esses tipos de problemas a solução mais rápida e eficaz é limitar o número de tentativas e bloquear o acesso ao usuário ou ao IP por um certo tempo. Também é importante saber que, para isso, existem também aplicativos de código aberto especificamente desenvolvidos para a defesa contra esse tipo de ataque.

Na postagem de hoje, Vou apresentar um é chamado Fail2Ban. Originalmente desenvolvido por Cyril Jaquier em 2004, o Fail2Ban é uma estrutura de software de prevenção de intrusão que protege os servidores de ataques de força bruta.

Sobre Fail2ban

Fail2ban verifica arquivos de log (/ var / log / apache / error_log) e proíbe IPs que mostram atividades maliciosas, como muitas senhas com falha e pesquisa de vulnerabilidades, etc.

Em geral, Fail2Ban é usado para atualizar as regras de firewall para rejeitar endereços IP por um determinado período de tempo, embora qualquer outra ação arbitrária (por exemplo, enviar um e-mail) também possa ser configurada.

Instalando Fail2Ban no Linux

O Fail2Ban é encontrado na maioria dos repositórios das principais distribuições Linux e mais especificamente nos mais utilizados para uso em servidores, como CentOS, RHEL e Ubuntu.

No caso do Ubuntu, basta digitar o seguinte para instalação:

sudo apt-get update && sudo apt-get install -y fail2ban

Enquanto no caso de Centos e RHEL, eles devem digitar o seguinte:

yum install epel-release
yum install fail2ban fail2ban-systemd

Se você tiver SELinux, é importante atualizar as políticas com:

yum update -y selinux-policy*

Uma vez feito isso, eles devem saber em primeiro plano que os arquivos de configuração Fail2Ban estão em / etc / fail2ban.

A configuração de Fail2Ban é principalmente dividido em dois arquivos principais; eles são fail2ban.conf e jail.conf. fail2ban.confes o arquivo de configuração Fail2Ban maior, onde você pode definir configurações como:

  • O nível de log.
  • O arquivo para fazer login.
  • O arquivo de soquete do processo.
  • O arquivo pid.

jail.conf é onde você configura opções como:

  • A configuração dos serviços a defender.
  • Quanto tempo para banir se eles deveriam ser atacados.
  • O endereço de e-mail para enviar relatórios.
  • A ação a ser executada quando um ataque é detectado.
  • Um conjunto predefinido de configurações, como SSH.

configuração

Agora vamos passar para a parte de configuração, A primeira coisa que faremos é uma cópia de backup do nosso arquivo jail.conf com:

cp -pf /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

E passamos a editar agora com o nano:

nano /etc/fail2ban/jail.local

Dentro, vamos para a seção [Padrão], onde podemos fazer alguns ajustes.

Aqui na parte "ingoreip" estão os endereços IP que serão deixados de fora e serão completamente ignorados pelo Fail2Ban, que é basicamente o IP do servidor (o local) e os demais que você acha que deveriam ser ignorados.

A partir daí os outros IPs que não conseguirem acessar estarão à mercê de serem banidos e aguarde o número de segundos que será banido (por padrão é 3600 segundos) e que fail2ban só atua após 6 tentativas malsucedidas

Após a configuração geral, vamos agora indicar o serviço. O Fail2Ban já possui alguns filtros predefinidos para vários serviços. Então, faça algumas adaptações. Aqui está um exemplo:

[ssh] enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 6

Com as alterações relevantes feitas, você finalmente precisará recarregar o Fail2Ban, executando:

service fail2ban reload
systemctl enable firewalld
systemctl start firewalld

Feito isso, vamos fazer uma verificação rápida para ver se o Fail2Ban está em execução:

sudo fail2ban-client status

Desbanir um IP

Agora que banimos com sucesso um IP, e se quisermos cancelar o banimento de um IP? Para fazer isso, podemos usar novamente o fail2ban-client e dizer a ele para cancelar o banimento de um IP específico, como no exemplo abaixo.

sudo fail2ban-client set ssh unbanip xxx.xxx.xx.xx

Onde "xxx ...." Será o endereço IP que você indicou.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.