Configurando o Fail2ban para proteger o Apache de um ataque DDOS

Configurarea Fail2ban pentru a proteja Apache de un atac DDOS
⏱️ 4 min read

O Apache é um dos servidores da web mais usados ​​e populares do mundo, por isso é importante proteger seu site e usuários de ataques de força bruta. Fail2ban é um software de prevenção de intrusão de código aberto escrito em Python. O Fail2Ban analisa continuamente os arquivos de log de vários serviços (como Apache, ssh, postfix …) e, se detectar ataques maliciosos, cria regras no firewall para bloquear endereços IP de hackers por um período de tempo especificado. Fail2Ban também informa um administrador do sistema por e-mail sobre sua atividade.

Neste artigo, explicarei como instalar o fail2ban e configurá-lo para monitorar seus logs do Apache quanto a tentativas de falha de autenticação maliciosa.

Requisitos

  • Servidor Ubuntu 14.04 com Apache instalado
  • Apache configurado com autenticação de senha

Instalando Fail2Ban

Primeiro, certifique-se de que o servidor Apache esteja rodando e a autenticação de senha esteja habilitada.

Em seguida, você pode instalar o Fail2ban executando:

Configure fail2ban para Apache

O fail2ban mantém seu arquivo de configuração “jail.conf” no diretório “/ etc / fail2ban /”. Ele contém um conjunto de filtros predefinidos para vários serviços e é recomendado que você não edite este arquivo. Você precisa habilitar as prisões predefinidas do Apache criando um arquivo “/etc/fail2ban/jail.local”:

Para criar um novo arquivo “jail.local”, execute:

Adicione o seguinte conteúdo:

Salve e feche o arquivo e reinicie o fail2ban para que as alterações tenham efeito.

Você pode verificar as regras que foram adicionadas pelo Fail2Ban no iptables usando o seguinte comando:

A saída será semelhante a esta:

Nota : Você pode encontrar os detalhes de cada prisão descritos abaixo:

  • [apache] : esta prisão é usada para bloquear tentativas de login malsucedidas.
  • [apache-noscript] : esta prisão é usada para bloquear clientes remotos que estão procurando scripts no site para executar.
  • [apache-overflows] : esta prisão é usada para bloquear clientes que estão tentando solicitar URLs suspeitos.
  • [apache-noscript] : esta prisão é usada para bloquear clientes remotos que estão procurando scripts no site para executar.
  • [apache-badbots] : esta prisão é usada para bloquear solicitações de bots maliciosos.

Nota : Você pode encontrar os detalhes de cada regra descrita abaixo.

  • enabled : esta opção significa que a proteção Apache está ativada.
  • port : esta opção especifica os serviços que o fail2ban monitora.
  • filter : esta opção se refere ao arquivo de configuração localizado no /etc/fail2ban/filter.d/ diretório.
  • logpath : esta opção especifica a localização do arquivo de log.
  • bantime : esta opção especifica o número de segundos que um host remoto será bloqueado no servidor.
  • maxretry : esta opção especifica o número de tentativas de login malsucedidas antes que um host remoto seja bloqueado durante o período de proibição.
  • ignoreip : esta opção permite que você coloque na lista de permissões certos endereços IP de bloqueio.

Verificar Status de Banimento Fail2ban

Uma vez que as prisões são ativadas, você pode verificar fail2ban usando o fail2ban-client comando:

Você pode ver uma lista de todas as prisões habilitadas.

apache_fail2ban_client_status

Para ver o status de uma prisão específica como apache, apache-badbots executando os seguintes comandos:

A saída é semelhante a esta:

apache_fail2ban_client_status_apache

Você também pode definir manualmente o banimento ou o cancelamento do banimento de endereços IP.

Por exemplo, para proibir um endereço IP (192.168.1.20) com uma prisão apache:

Para cancelar o banimento de um endereço IP (192.168.1.21) com uma prisão do Apache:

Testando Fail2Ban

É importante testar seu fail2ban se ele está funcionando conforme o esperado ou não. Agora, em uma máquina remota, abra seu navegador da web e digite a URL do seu domínio (ou o endereço IP do seu servidor). Quando o Apache solicitar autenticação, forneça um nome de usuário e senha incorretos repetidamente. Depois de atingir o limite, você deve ser bloqueado e incapaz de acessar o site.

apache_fail2ban_block_site

Verifique o status com o fail2ban-client comando:

Você verá o seu endereço IP sendo bloqueado no site.

apache_fail2ban_client_ban_status

Conclusão

Agora, você tem conhecimento suficiente para configurar o fail2ban. Usar fail2ban é uma maneira boa e fácil de interromper inundações (ataques de força bruta). Também é uma boa maneira de limitar o número de solicitações ruins que você recebe em seu servidor da web Apache.

Join our Newsletter and receive offers and updates! ✅

0 0 votes
Article Rating
Avatar of Routech

Routech

Routech is a website that provides technology news, reviews and tips. It covers a wide range of topics including smartphones, laptops, tablets, gaming, gadgets, software, internet and more. The website is updated daily with new articles and videos, and also has a forum where users can discuss technology-related topics.

Você pode gostar...

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x