EQVPS

Como configurar o fail2ban para bloquear ataques de força bruta

Acabe com o chute constante de senha no seu servidor: o fail2ban observa seus logs e bane automaticamente IPs que falham o login muitas vezes. Instale, ative a jail de SSH e ajuste as regras de banimento — em poucos comandos.

Mesmo com tudo o resto bem travado, os bots nunca param de tentar senhas contra a porta 22 — é um ruído de fundo e uma carga constantes. O fail2ban observa seus logs e bane automaticamente qualquer IP que falhe o login muitas vezes, de modo que os atacantes são barrados depois de poucas tentativas em vez de ficarem chutando para sempre. É uma instalação pequena e uma grande redução no spam de logs.

1. Instale o fail2ban

sudo apt update && sudo apt install -y fail2ban

2. Crie uma configuração local

Nunca edite o jail.conf que vem de fábrica diretamente — sobrescreva-o em jail.local:

sudo tee /etc/fail2ban/jail.local > /dev/null <<'EOF'
[DEFAULT]
# don't ban yourself — add your home/office IP
ignoreip = 127.0.0.1/8 ::1
bantime  = 1h
findtime = 10m
maxretry = 5

[sshd]
enabled = true
EOF

Isso bane um IP por uma hora depois de 5 logins falhos em 10 minutos. Adicione seu próprio IP em ignoreip para que uma senha digitada errado nunca te tranque para fora.

3. Inicie e ative na inicialização

sudo systemctl enable --now fail2ban

4. Verifique a jail de SSH

sudo fail2ban-client status sshd

Você verá quantos IPs estão banidos no momento — muitas vezes um número surpreendente em poucos minutos.

Gerenciando banimentos

sudo fail2ban-client set sshd unbanip 1.2.3.4   # lift a ban
sudo fail2ban-client status                     # list all jails
sudo systemctl reload fail2ban                  # apply config changes

Cuidados honestos

Próximos passos

O fail2ban é uma camada de um servidor endurecido. Combine-o com a autenticação por chave SSH e um firewall UFW, e percorra a checklist completa de segurança de um VPS novo antes de expor qualquer coisa à internet.

Perguntas frequentes

O que o fail2ban realmente faz?

Ele observa arquivos de log (como o log de autenticação do SSH) em busca de falhas repetidas vindas do mesmo IP, e quando um IP ultrapassa um limite ele aplica um banimento temporário no firewall. Os bots que martelam a porta 22 o dia todo são bloqueados depois de poucas tentativas em vez de ficar chutando para sempre. É proteção automática e contínua.

Ainda preciso do fail2ban se uso chave SSH?

Eles resolvem problemas diferentes. A chave SSH torna o chute praticamente impossível; o fail2ban corta o barulho e a carga de tentativas infinitas, e protege qualquer outro serviço que você exponha (e-mail, logins web). Com SSH só por chave o risco já é baixo, mas o fail2ban é uma defesa em profundidade barata e reduz o spam nos logs.

O fail2ban pode me banir por engano?

Pode, se você errar sua própria senha várias vezes seguidas — você ficaria banido pelo bantime, e depois seria desbanido automaticamente. Para nunca se trancar para fora, adicione seu próprio IP em 'ignoreip' na configuração, e lembre-se de que uma console do provedor (a EQVPS tem uma) sempre te traz de volta.

Como vejo quem está banido, ou desbaneio um IP?

Use 'sudo fail2ban-client status sshd' para ver a jail e os IPs banidos. Para levantar um banimento: 'sudo fail2ban-client set sshd unbanip 1.2.3.4'. Para adicionar um IP de confiança permanentemente, coloque-o em ignoreip e recarregue.

O que são bantime, findtime e maxretry?

maxretry é quantas falhas são permitidas, findtime é a janela em que elas são contadas, e bantime é quanto tempo o banimento dura. Por exemplo, 5 falhas em 10 minutos gera 1 hora de banimento. Aumente o bantime (ou defina um valor maior) para atacantes mais persistentes.

Comentários

Nenhum comentário ainda. Seja o primeiro.

Deixe um comentário

Os comentários são moderados antes de aparecerem.