Guia de tecnologias

Como prevenir ataques de força bruta com Brutelock

5 min read Segurança Atualizado 18 Oct 2025
Prevenir ataques de força bruta com Brutelock
Prevenir ataques de força bruta com Brutelock

O que é Brutelock (definição curta)

Brutelock é um programa open source que monitora logs do sistema e bloqueia automaticamente IPs que tentam ataques de força bruta. Força bruta: tentativa repetida de adivinhar credenciais até obter acesso.

Antes de começar — requisitos rápidos

  • Acesso root ou privilégios sudo no servidor.
  • Ferramentas build básicas (make, gcc) instaladas.
  • Conexão à internet para baixar o pacote.
  • Chave de subscrição Brutelock (opcional para atualizações e proteções proativas).

Passo a passo de instalação

Siga estes passos exatamente como estão:

  1. Faça o download do agente Brutelock e salve em /usr/local/.
  2. cd /usr/local/
  3. tar -xjvf brutelock-version_number.tar.bz2
  4. cd /usr/local/brutelock-version_number
  5. ./configure
  6. make
  7. make install
  8. Edite o novo arquivo de configuração (/usr/local/brutelock/conf/brutelock.conf) e insira sua chave de subscrição quando aplicável.
  9. Edite também o caminho para seu log de SSH no arquivo de configuração, se necessário. Consulte o README incluído no código-fonte do Brutelock para localizar o arquivo de log do seu sistema. Descomente outros serviços que deseja proteger, como ftp, pop e imap.
  10. Adicione quaisquer IPs ao arquivo /usr/local/brutelock/conf/whitelist (cada IP em linhas separadas) para endereços que o Brutelock nunca deve bloquear.
  11. Adicione uma cadeia separada ao iptables:
    /sbin/iptables -N Brutelock-Firewall-INPUT
    /sbin/iptables -I INPUT -j Brutelock-Firewall-INPUT
  12. Inicie o daemon do Brutelock:
    /usr/local/brutelock/bin/brutelockd
  13. Verifique seus logs. O número de tentativas de login com falha deverá diminuir drasticamente.

Importante: se não tiver chave de subscrição, registre-se no site do Brutelock. A opção gratuita permite bloqueio ativo; opções pagas oferecem atualizações e proteção proativa.

Nota: além do endereço localhost (127.0.0.1), insira no mínimo o IP público do servidor na whitelist.

Configurações e arquivos importantes (fatos rápidos)

  • Arquivo de configuração: /usr/local/brutelock/conf/brutelock.conf
  • Whitelist: /usr/local/brutelock/conf/whitelist
  • Binário do daemon: /usr/local/brutelock/bin/brutelockd
  • Logs típicos monitorados: /var/log/auth.log, /var/log/secure (dependendo da distro)
  • Portas comuns: SSH 22, FTP 21, POP3 110, IMAP 143

Testes e critérios de aceitação

Use estes testes para validar a instalação:

  • O daemon está em execução: ps aux | grep brutelock
  • Tentativa de login falha a partir de um IP de teste e Brutelock adiciona a regra de bloqueio no iptables.
  • IPs na whitelist nunca são bloqueados.
  • Não há erros no arquivo de log do Brutelock (ver /var/log/syslog ou equivalente).

Critérios de aceitação mínimos:

  • Brutelock executa sem erros e persiste após reboot (ou há instrução para iniciar via systemd/init).
  • Logs mostram detecção e bloqueio de IPs maliciosos.
  • Serviços legítimos continuam acessíveis para IPs da whitelist.

Procedimentos de verificação e manutenção (mini-playbook)

  1. Verifique status do daemon diariamente nas primeiras 72 horas.
  2. Revise entradas no /usr/local/brutelock/conf/whitelist semanalmente.
  3. Mantenha o pacote do sistema e dependências atualizadas.
  4. Se usar subscrição paga, verifique atualizações automáticas do Brutelock.

Lista de verificação por função

Administrador (sysadmin):

  • Instalar e configurar brutelock.conf
  • Adicionar IPs confiáveis na whitelist
  • Adicionar cadeia no iptables
  • Testar bloqueio com IPs controlados

Equipe de segurança:

  • Revisar logs de bloqueio semanalmente
  • Configurar alertas para bloqueios em massa
  • Validar mudanças no arquivo de regras

Equipe de operações:

  • Garantir que o serviço inicie no boot
  • Testar recuperação após reboot
  • Documentar o procedimento de rollback

Alternativas e quando escolher outra solução

  • Fail2ban: alternativa popular, com integração simples e filtros prontos. Escolha fail2ban se preferir pacotes com suporte amplo na sua distribuição.
  • Soluções WAF/IDS: se precisar de inspeção de tráfego mais profunda, considere um WAF ou IDS em conjunto.
  • Quando Brutelock pode falhar: se os logs não estiverem centralizados ou o padrão de log for muito diferente do esperado, Brutelock pode não detectar ataques corretamente. Nesse caso, ajuste as regras regex ou consolide logs.

Dicas de hardening complementares

  • Desative login root via SSH e use autenticação por chave pública.
  • Considere alterar a porta SSH para reduzir ruído automatizado (não substitui bloqueio).
  • Habilite rate-limiting com iptables ou nftables para conexões repetidas.
  • Use autenticação de dois fatores quando aplicável.
  • Garanta rotação de logs para permitir detecção contínua (logrotate).

Troubleshooting comum

  • Brutelock não detecta tentativas: confirme o caminho do log configurado em brutelock.conf.
  • IPs legítimos sendo bloqueados: verifique a whitelist e os padrões regex; adicione o IP à whitelist temporariamente.
  • Regras do iptables não sendo aplicadas: confirme permissões e que a cadeia Brutelock-Firewall-INPUT existe.

Testes/aceitação (casos de teste rápidos)

  • Caso 1: Simule 10 tentativas SSH falhas de um IP de teste; o IP deve aparecer bloqueado em iptables.
  • Caso 2: Tente acesso legítimo a partir de IP na whitelist; acesso deve ser permitido mesmo após múltiplas tentativas falhas.
  • Caso 3: Reinicie o servidor; verifique se brutelockd reinicia ou documente como inicializá-lo automaticamente.

Rollback e recuperação

  1. Pare o daemon: kill ou systemctl stop brutelockd (se instalado como serviço).
  2. Remova regras adicionadas manualmente na cadeia Brutelock-Firewall-INPUT:
    /sbin/iptables -D INPUT -j Brutelock-Firewall-INPUT
    /sbin/iptables -F Brutelock-Firewall-INPUT
    /sbin/iptables -X Brutelock-Firewall-INPUT
  3. Restaure backup do arquivo de configuração, se necessário.

Glossário (uma linha cada)

  • Força bruta: tentativa repetida de adivinhar senhas até obter acesso.
  • Whitelist: lista de IPs confiáveis que não devem ser bloqueados.

Resumo final

Brutelock é uma solução leve e extensível para bloquear ataques de força bruta com base em logs. Instale o agente seguindo os passos acima, configure corretamente os caminhos de log e a whitelist, e combine Brutelock com boas práticas de segurança (autenticação por chave, rate-limiting, logs rotacionados) para reduzir riscos.

Importante: teste em um ambiente controlado antes de aplicar em produção e mantenha backups das configurações.

Autor
Edição

Materiais semelhantes

Instalar e usar Podman no Debian 11
Containers

Instalar e usar Podman no Debian 11

Apt‑pinning no Debian: guia prático
Administração de sistemas

Apt‑pinning no Debian: guia prático

Injete FSR 4 com OptiScaler em qualquer jogo
Tecnologia

Injete FSR 4 com OptiScaler em qualquer jogo

DansGuardian e Squid com NTLM no Debian Etch
Infraestrutura

DansGuardian e Squid com NTLM no Debian Etch

Corrigir erro de instalação no Android
Android

Corrigir erro de instalação no Android

KNetAttach: Pastas de Rede remota no KDE
KDE

KNetAttach: Pastas de Rede remota no KDE