Torne tentativas repetidas de login menos úteis
Um caminho de configuração cauteloso para bloqueio baseado em logs em um servidor Linux.
Conteúdo revisado · Português (BR)
- Tipo de guia
- Operar e proteger
- Exemplos
- Ilustrativo, específico do ambiente
- Escopo de integração
- Nenhuma máquina remota conectada
Confirme o evento e a origem do log
O Fail2ban lê falhas de autenticação e solicita a um backend de firewall que bloqueie fontes repetidas. Ajuda com tentativas repetidas; não substitui autenticação por chave ou atualizações do sistema. Confirme que as falhas do SSH chegam ao journal ou arquivo de log que o jail irá ler.
Instale o pacote para sua distribuição
Em um host Debian ou Ubuntu mantido, o gerenciador de pacotes pode instalá-lo. Revise seus padrões e backend antes de habilitar um jail personalizado. Outras distribuições podem usar um repositório de pacotes ou ação de firewall diferente.
sudo apt update
sudo apt install fail2banAdicione uma pequena substituição, não um arquivo global copiado
Crie uma substituição em /etc/fail2ban/jail.d/sshd.local. Corresponda à porta real do SSH. Este exemplo lê o journal do systemd; use um backend e caminho de log apropriados se o sistema gravar um log diferente. Adicione um endereço de administração confiável ao ignoreip somente depois de verificá-lo.
[sshd]
enabled = true
port = 22
backend = systemd
maxretry = 5
findtime = 10m
bantime = 1h
ignoreip = 127.0.0.1/8 ::1Verifique a configuração e o jail ativo
Inicie o serviço somente após revisar o arquivo e manter uma sessão de recuperação aberta. Inspecione o serviço e a saída do jail; um daemon ativo sem eventos correspondentes pode não oferecer proteção alguma.
sudo fail2ban-client -t
sudo systemctl enable --now fail2ban
sudo fail2ban-client status
sudo fail2ban-client status sshdTeste sem perder o único caminho de acesso
Use uma fonte de teste controlada separada para verificar detecção, banimento e expiração. Verifique IPv6 e as regras efetivas do firewall. Se uma fonte confiável for banida incorretamente, use o console retido para remover esse banimento específico e depois corrija a política; não desative toda a proteção para contornar um erro.
sudo fail2ban-client set sshd unbanip 192.0.2.44Saia com um resultado verificável.
- Confirme o evento e a origem do log.
- Teste sem perder o único caminho de acesso.
- Mantenha informações de recuperação e segredos fora de arquivos públicos.