Como instalar o Fail2ban num VPS Linux

O Fail2ban monitora logs e bloqueia temporariamente endereços IP após tentativas repetidas de login falhadas. É comumente usado para reduzir o ruído de força bruta SSH em servidores Linux públicos.

O Fail2ban funciona lendo arquivos de log, correspondendo padrões de login falhado com filtros e aplicando bloqueios temporários através de uma configuração de jail.

 

Ubuntu ou Debian

sudo apt update
sudo apt install fail2ban
sudo systemctl enable --now fail2ban

 

AlmaLinux, Rocky Linux, Oracle Linux ou CentOS

sudo dnf install fail2ban
sudo systemctl enable --now fail2ban

Se o pacote não estiver disponível, ative primeiro o repositório extra apropriado para a sua distribuição.

 

Criar uma configuração de jail local

Não edite diretamente o jail.conf. Crie ou edite o jail.local para que as atualizações de pacotes não sobrescrevam as suas alterações.

sudo nano /etc/fail2ban/jail.local

Um jail básico para SSH parece assim:

[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 5
findtime = 10m
bantime = 1h

No AlmaLinux, Rocky Linux, Oracle Linux ou CentOS, os logs de SSH podem estar em /var/log/secure em vez disso:

logpath = /var/log/secure

 

Configurações comuns

ConfiguraçãoO que controla
enabledAtiva ou desativa o jail.
portA porta do serviço que o Fail2ban deve proteger.
filterO filtro do Fail2ban usado para detectar tentativas falhadas.
logpathO arquivo de log que o Fail2ban lê.
maxretryQuantas falhas são permitidas antes de um bloqueio.
findtimeA janela de tempo em que o Fail2ban conta as falhas.
bantimeQuanto tempo o IP é bloqueado.
ignoreipEndereços IP que nunca devem ser bloqueados.

 

Colocar o seu próprio IP na lista branca

Se tiver um IP fixo em casa ou no escritório, adicione-o ao ignoreip para não se bloquear enquanto testa:

[DEFAULT]
ignoreip = 127.0.0.1/8 YOUR_IP_ADDRESS

Adicione apenas endereços IP em que confia. Não coloque na lista branca intervalos públicos amplos a menos que compreenda o impacto na segurança.

 

Reiniciar e verificar o Fail2ban

  1. Reinicie o Fail2ban após alterar a configuração do jail:
    sudo systemctl restart fail2ban
  2. Verifique o serviço Fail2ban e o status do jail:
    sudo systemctl status fail2ban --no-pager
    sudo fail2ban-client status
    sudo fail2ban-client status sshd

    Terminal Linux VPS mostrando o status do serviço Fail2ban e o status do jail sshd

 

Desbloquear um endereço IP

sudo fail2ban-client set sshd unbanip IP_ADDRESS

 

Ver logs do Fail2ban

sudo journalctl -u fail2ban --since "1 hour ago"
sudo tail -100 /var/log/fail2ban.log

O Fail2ban é útil, mas não substitui chaves SSH, senhas fortes, atualizações e um firewall sensato.

  • 0 Utilizadores acharam útil
Esta resposta foi útil?

Artigos Relacionados

Como conectar-se a um VPS Linux com SSH

SSH é a forma normal de gerir um VPS Linux. Ele fornece um terminal no servidor para que possa...

Como atualizar pacotes em um VPS Linux

Manter os pacotes atualizados ajuda a corrigir problemas de segurança e mantém as ferramentas do...

Como criar um utilizador sudo num VPS Linux

Um utilizador sudo permite-lhe gerir um VPS Linux sem ter de iniciar sessão como root para cada...

Como proteger o SSH num VPS Linux

O SSH é a principal forma de gerir um VPS Linux, por isso deve ser protegido antes de o servidor...

Como verificar o uso de disco em um VPS Linux

Problemas de uso de disco podem impedir que atualizações, backups, logs, bases de dados e...