Configuração Fail2Ban e proteção de força bruta no servidor Linux
Guia para proteção de SSH, painel e entradas de serviço com sistema automático de banimento de IP.
Todo servidor Linux aberto à Internet é constantemente verificado por bots automatizados. Esses bots tentam fazer login no serviço SSH especialmente pelo método de tentativa e erro. Este tipo de ataque ataque de força bruta É chamado.
Fail2Ban rastreia tentativas de login malsucedidas em arquivos de log. Ele proíbe automaticamente endereços IP que digitam incorretamente mais do que o número especificado. Dessa forma, o invasor não poderá tentar a senha repetidamente no mesmo IP.
1. O que o Fail2Ban faz?
- SSH reduz ataques de força bruta.
- Ele proíbe endereços IP que insiram um grande número de entradas incorretas.
- Ele executa ações automáticas monitorando os logs do servidor.
- Funciona em conjunto com o firewall para bloquear o tráfego de ataque.
- Ele também pode ser usado para painéis de servidores de jogos, logins em painéis da web e serviços de e-mail.
2. Instalação Fail2Ban
Em sistemas baseados em Ubuntu e Debian:
apt update apt install fail2ban -y
Em sistemas CentOS, AlmaLinux ou Rocky Linux:
yum install epel-release -y yum install fail2ban -y
Para iniciar o serviço e executá-lo automaticamente na inicialização:
systemctl enable fail2ban systemctl start fail2ban systemctl status fail2ban
3. Copie o arquivo de configurações padrão
Configurações Fail2Ban diretamente prisão.conf Não deve ser editado no arquivo. Porque este arquivo pode mudar nas atualizações. em vez disso prisão.local arquivo é criado.
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Em seguida edite o arquivo:
nano /etc/fail2ban/jail.local
4. Habilitando proteção SSH
em arquivo [sshd] Encontre a seção e edite-a da seguinte maneira:
[sshd] enabled = true port = ssh filter = sshd logpath = /var/log/auth.log maxretry = 5 findtime = 10m bantime = 1h
Esta configuração significa:
- tentativa máxima = 5: A ação é tomada após 5 entradas incorretas.
- tempo de localização = 10m: As tentativas são contadas em um período de 10 minutos.
- horário de banimento = 1h: O endereço IP é banido por 1 hora.
5. Listando seu próprio endereço IP na lista segura
Se você usa IP fixo, você pode excluir seu próprio endereço IP do sistema de banimento.
ignoreip = 127.0.0.1/8 192.168.1.1 SUNUCUYA_BAGLANDIGINIZ_IP
aqui IP AO QUAL VOCÊ ESTÁ CONECTADO AO SERVIDOR Você deve escrever seu endereço IP real no campo.
6. Reiniciando o serviço Fail2Ban
systemctl restart fail2ban
Para verificar o status:
fail2ban-client status
Para ver o status da prisão SSH:
fail2ban-client status sshd
7. Vendo endereços IP banidos
fail2ban-client status sshd
na saída Lista de IP banidos Endereços IP banidos aparecem no campo.
8. Abrindo endereço IP banido acidentalmente
Se o seu próprio endereço IP ou o endereço IP de um usuário confiável foi banido por engano, você pode removê-lo com o seguinte comando:
fail2ban-client set sshd unbanip IP_ADRESI
Erros Comuns
- Editando o arquivo jail.conf diretamente
- Não adicionar seu próprio endereço IP ao campo ignoreip
- Não alterar a configuração da porta Fail2Ban mesmo que a porta SSH tenha sido alterada
- Digitando incorretamente o caminho do arquivo de log
- Pensando que o Fail2Ban está ativo e não verificando o status do serviço
Perguntas frequentes
O Fail2Ban sozinho fornece segurança suficiente?
Não. O Fail2Ban é uma importante camada de proteção, mas deve ser usado em conjunto com uma senha forte, sistema atualizado, firewall e configuração correta do serviço.
O Fail2Ban protege o servidor do jogo?
Não analisa diretamente o tráfego do jogo. No entanto, pode fornecer proteção através de SSH, painel, serviços web e alguns logs de login.
Posso aumentar a duração do banimento?
Sim. Você pode definir o valor do bantime para períodos mais longos, como 24h, 7d em vez de 1h.
Recomendações de segurança
- Desative o login root.
- Use uma senha forte e exclusiva.
- Se possível, faça login com a chave SSH.
- Verifique os logs do Fail2Ban regularmente.
- Não deixe serviços desnecessários abertos na Internet.
Este artigo foi preparado especialmente para PvPServer.