JanelasMacSoftwareConfiguraçõesSegurançaProdutividadeLinuxAndroidDesempenhoConfiguraçãoApple Tudo

Como configurar o Fail2Ban no Linux

Editado 1 Uma semana atrás por ExtremeHow Equipe Editorial

SegurançaFail2BanProteção contra Força BrutaConfiguraçãoInstalaçãoSysAdminMonitoramentoSSHBanimento de IPAutomação

Como configurar o Fail2Ban no Linux

Tradução atualizada 1 Uma semana atrás

O Fail2Ban é um software de código aberto popular que ajuda a proteger seu servidor Linux contra ataques de força bruta. Ele faz isso monitorando arquivos de log e banindo temporariamente endereços IP que apresentam comportamento suspeito. Configurar o Fail2Ban corretamente pode aumentar a segurança do seu servidor, respondendo automaticamente a tentativas de acesso não autorizadas.

Entendendo o Fail2Ban

O Fail2Ban funciona identificando instâncias em que um usuário ou script está tentando obter acesso não autorizado ao seu servidor. Ele escaneia arquivos de log específicos em busca de padrões predefinidos e, em seguida, bane temporariamente quaisquer endereços IP que correspondam a esses padrões. Essa ação ajuda a impedir que atacantes adivinhem repetidamente senhas ou manipulem vulnerabilidades em seu sistema.

Antes de configurar o Fail2Ban, é importante entender seus componentes básicos:

Pré-requisitos

Antes de configurar o Fail2Ban, certifique-se de ter acesso administrativo ao seu servidor Linux. Isso permite que você instale novos softwares e modifique a configuração do sistema. Além disso, você deve ter um conhecimento básico das operações de linha de comando do Linux. Também é importante configurar corretamente seu firewall, pois o Fail2Ban irá interagir com ele para bloquear e desbloquear endereços IP.

Instalando o Fail2Ban

A maioria das distribuições Linux incluem o Fail2Ban em seus repositórios de pacotes, o que torna a instalação simples. Vamos ver as etapas de instalação para diferentes distribuições:

Para sistemas baseados em Debian (por exemplo, Ubuntu)

sudo apt-get update
sudo apt-get install fail2ban

Para sistemas baseados em Red Hat (por exemplo, CentOS)

sudo yum install fail2ban

Após a instalação, o serviço Fail2Ban geralmente será iniciado automaticamente. Você pode verificar seu status da seguinte forma:

sudo systemctl status fail2ban

Configurando o Fail2Ban

O Fail2Ban é altamente configurável através de seus arquivos de configuração. Veja como você pode personalizá-lo para atender às suas necessidades de segurança:

Criar configuração local

O arquivo de configuração principal do Fail2Ban está localizado em /etc/fail2ban/jail.conf, mas é recomendado criar uma cópia local para garantir que futuras atualizações não sobrescrevam suas configurações. Crie um novo arquivo chamado jail.local:

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Modificar jail.local

Edite jail.local para definir suas preferências específicas. As seguintes seções são necessárias para configurar:

Seção padrão

Esta seção define configurações gerais que se aplicam a todos os jails, como o tempo de bloqueio e se alertas de email são enviados. Abra o arquivo em um editor de texto:

sudo nano /etc/fail2ban/jail.local

Na seção [DEFAULT], você pode encontrar os seguintes tipos de variáveis:

[DEFAULT]
ignoreip = 127.0.0.1/8
bantime = 600
findtime = 600
maxretry = 3
destemail = your-email@example.com
banaction = iptables-multiport
mta = sendmail
protocol = tcp
chain = INPUT

Habilitar jail

Os jails são a essência do Fail2Ban, definindo quais serviços monitorar e como. No arquivo jail.local, você pode habilitar jails para os serviços que deseja proteger:

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

Adicionando filtros personalizados

Embora o Fail2Ban venha com vários filtros pré-configurados, você pode escrever filtros personalizados se necessário. Crie um novo arquivo no diretório /etc/fail2ban/filter.d/. O filtro deve consistir em uma série de expressões regulares que correspondam às atividades suspeitas que você deseja identificar.

Exemplo de filtro personalizado

Suponha que você queira criar um filtro personalizado para detectar tentativas de login falhas em um aplicativo web. Primeiro, crie um novo arquivo de filtro:

sudo nano /etc/fail2ban/filter.d/myapp.conf

Adicione expressões como a seguinte:

[Definition]
failregex = ^.*Failed login for user.*$
ignoreregex =

Testando o Fail2Ban

É importante testar sua configuração do Fail2Ban para garantir que ela funcione conforme o esperado:

Iniciar o serviço Fail2Ban

Após configurar o Fail2Ban, inicie ou reinicie o serviço para aplicar as alterações:

sudo systemctl restart fail2ban

Verificar o status do Fail2Ban

Para garantir que o serviço Fail2Ban esteja funcionando sem erros, verifique seu status:

sudo fail2ban-client status

Restrições de teste

Para simular um ataque, falhe intencionalmente nas tentativas de login usando o serviço alvo. Monitore o Fail2Ban para garantir que o IP seja bloqueado:

sudo fail2ban-client status sshd

Este comando exibirá o status do jail SSH, incluindo os IPs atualmente bloqueados.

Removendo o bloqueio de um IP

Às vezes, você pode precisar desbloquear um IP que foi bloqueado por engano. Para desbloquear um IP, use o seguinte comando:

sudo fail2ban-client set <jail> unbanip <IP-Address>

Fail2Ban e firewall

O Fail2Ban utiliza principalmente o iptables para gerenciar os bloqueios. No entanto, se você estiver usando ferramentas de gerenciamento de firewall, como firewalld ou UFW (Uncomplicated Firewall), certifique-se de que eles se integrem suavemente ao Fail2Ban. Você pode precisar personalizar banaction na configuração para usar essas ferramentas.

Monitorando e mantendo o Fail2Ban

Verifique os logs do Fail2Ban regularmente para qualquer atividade incomum. Os logs podem geralmente ser encontrados aqui:

/var/log/fail2ban.log

Revisar esses logs ajuda a entender os padrões de ataque e a adaptar suas políticas de segurança de forma mais eficaz.

Conclusão

O Fail2Ban é uma ferramenta versátil e essencial para proteger servidores Linux de tentativas de acesso não autorizadas. Ao configurá-lo corretamente, você pode reduzir substancialmente o número de ataques de força bruta bem-sucedidos em seus serviços. Ajuste a configuração para adequá-la ao ambiente do seu servidor e monitore continuamente os logs para manter uma postura de segurança forte.

À medida que a tecnologia evolui, os métodos de ataque também evoluem. Atualizar regularmente o Fail2Ban e sua configuração garante que você minimize os riscos associados a novas ameaças. Lembre-se de que, enquanto o Fail2Ban fortalece sua segurança, ele deve fazer parte de uma estratégia de segurança abrangente junto com outras práticas recomendadas, como usar senhas fortes, manter seus sistemas atualizados e restringir portas abertas.

Se você encontrar algo errado com o conteúdo do artigo, você pode


Comentários