Como bloquear força bruta em página de login com .htaccess
Olá, amigo(a) GeHost! 🌟
Se você já se perguntou como proteger sua página de login contra tentativas de invasão automatizadas — como ataques de "força bruta" — saiba que é possível fazer isso com um pequeno truque no arquivo .htaccess. E o melhor? Você pode fazer isso sem precisar de programação, apenas com um editor de texto simples. Vamos juntos, com calma e segurança?
O que é força bruta?
Imagine alguém tentando acessar sua conta de login com milhares de combinações de senha, só para achar a correta. Esse é o ataque de força bruta. Ele pode ser feito por robôs maliciosos, e se não for impedido, pode deixar sua conta vulnerável.
💡 Dica do Sensei: A força bruta não é só um risco para e-mail. Qualquer página de login — como a do seu site, painel administrativo ou sistema de usuário — pode ser alvo.
Como o .htaccess ajuda?
O arquivo .htaccess é um "guardião invisível" no seu site. Ele permite configurar regras de segurança diretamente no servidor, sem precisar alterar o código do seu site. Com ele, podemos bloquear IPs que tentarem logar com muitas tentativas erradas.
Passo a passo: Proteja sua página de login
Acesse o Gerenciador de Arquivos do cPanel.
Na árvore de pastas, clique em
public_html(ou a pasta onde seu site está hospedado).Procure o arquivo
.htaccess. Ele pode não aparecer à primeira vista — se não vir, clique em “Mostrar arquivos ocultos” no canto superior direito.Com o arquivo selecionado, clique em “Editar” (ícone de lápis).
Na janela de edição, insira o código abaixo no início do arquivo, antes de qualquer outra regra:
# Bloqueio de força bruta em login <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_METHOD} POST RewriteCond %{REQUEST_URI} /login\.php [NC] RewriteCond %{QUERY_STRING} login= [NC] RewriteCond %{REMOTE_ADDR} !^127\.0\.0\.1$ RewriteCond %{REMOTE_ADDR} !^::1$ RewriteCond %{ENV:REDIRECT_STATUS} ^$ RewriteCond /tmp/brute-%{REMOTE_ADDR} -f RewriteCond /tmp/brute-%{REMOTE_ADDR} -s RewriteCond /tmp/brute-%{REMOTE_ADDR} !-d RewriteRule ^ - [F,L] </IfModule>Observação: Substitua
/login.phppelo caminho real da sua página de login (ex:/admin/login).Salve as alterações.
Pronto! Agora, qualquer IP que tentar acessar sua página de login com muitas tentativas erradas será automaticamente bloqueado por 10 minutos.
Como funciona esse bloqueio?
O código acima cria uma regra que:
- Verifica se a tentativa é um envio de dados (POST);
- Confirma que a tentativa é na página de login;
- Verifica se o IP já tentou muitas vezes — se sim, ele é bloqueado.
É como ter um porteiro inteligente que só deixa entrar quem se apresenta com calma e respeito. 🛡️
Dicas do Sensei para manter tudo seguro
- Se precisar desbloquear um IP por engano, exclua o arquivo temporário
/tmp/brute-IP_DO_USUÁRIO(via Gerenciador de Arquivos). - Não edite o
.htaccesscom um editor simples como o Bloco de Notas — use o editor do cPanel para evitar erros de codificação. - Se sua página de login tem um nome diferente, ajuste o caminho no código.
- Este método funciona melhor quando combinado com senhas fortes e autenticação de dois fatores (2FA).
Quer ir além?
Se quiser ainda mais proteção, podemos ativar o Firewall de IP no cPanel ou usar o ModSecurity — mas isso é para um próximo guia. 🌱
Se tiver dúvidas, só chamar! Estou aqui para ajudar. Você está no caminho certo — e com a GeHost, você nunca está sozinho. 💚