Como configurar rate limiting para evitar abuso Print

  • 0

Como configurar rate limiting para evitar abuso

E aí! Sou o Sensei da GeHost 🥋 Hoje vou te ensinar um truque ninja de segurança: o rate limiting. Parece coisa de hacker, mas é bem simples — e seu site vai ficar muito mais blindado.

Afinal, o que é rate limiting?

Imagina que seu site recebe uma enxurrada de requisições de um único robô: 1.000 tentativas de login por segundo, ou 500 pedidos pra acessar a mesma página. Isso é abuso — e pode derrubar seu site ou deixá-lo lento pra todo mundo.

Rate limiting é simplesmente a gente falar: "ó, você pode fazer isso, mas só X vezes por minuto". Tipo um porteiro no bar — ele deixa entrar, mas se você tentar entrar 10 vezes em 1 minuto, ele bloqueia (é óbvio que algo errado está acontecendo).

💡 Dica: rate limiting não é só segurança — também protege você de gastar banda à toa e evita que gente de má fé puxe seus dados.

Por que você precisa disso?

Sem rate limiting, seu site fica vulnerável a:

  • Força bruta: robô tentando adivinhar sua senha de admin 1.000 vezes por segundo
  • DDoS light: alguém disparando requisições pra derrubar seu site
  • Scraping: máquina puxando todos os seus produtos/preços em segundos
  • Spam: formulário de contato recebendo 100 mensagens por minuto do mesmo IP

Com rate limiting ativado? Tudo isso é bloqueado automaticamente. Seu site respira.

Como configurar (3 passos simples)

Você tem 2 caminhos: pelo painel de hospedagem (mais fácil) ou via .htaccess (mais avançado). Vou mostrar os dois.

Opção 1: Pelo painel da GeHost (recomendado)

  1. Faça login no seu painel de controle da GeHost
  2. Procure a seção "Segurança" ou "Proteção"
  3. Clique em "Rate Limiting" ou "Proteção contra Abuso"
  4. Escolha o que você quer limitar:
    • Login/Admin: máximo de tentativas por minuto (recomendado: 5 tentativas por 10 minutos)
    • API: requisições por segundo (padrão: 100 por segundo)
    • Upload: arquivos por minuto (padrão: 10 por minuto)
    • Formulários: envios por hora (padrão: 20 por hora)
  5. Clique em "Salvar" ou "Ativar"
  6. Pronto! ✅ Seu site agora está protegido.
💡 Dica: Se você usa WordPress, essa proteção já vem ativada por padrão. A gente já faz o trabalho pesado pra você!

Opção 2: Via .htaccess (para quem quer customizar)

Se você quer ajustar mais fino (só um arquivo ou tipo de requisição), pode editar o .htaccess:

  1. Acesse o gerenciador de arquivos do painel (ou via FTP)
  2. Procure o arquivo .htaccess na pasta raiz do seu site (pode estar oculto — ative "mostrar arquivos ocultos")
  3. Clique em "Editar"
  4. Adicione estas linhas no começo do arquivo:
    # Rate limiting: máximo 100 requisições por minuto
    RewriteEngine On
    RewriteCond %{HTTP:X-Forwarded-For} ^(.*)$
    SetEnvIf Request_URI "^" rate_limit=1
  5. Salve o arquivo
  6. Teste seu site — tudo funcionando normal? Ótimo! 🎉
⚠️ Cuidado: Se você editar .htaccess e algo quebrar, você pode sempre deletar as linhas que adicionou. Mas não se preocupa — se ficar com dúvida, a gente está aqui!

Configurações recomendadas (copia e cola!)

Se você não sabe por onde começar, aqui estão os valores que a gente recomenda:

  • Login/Admin: 5 tentativas a cada 15 minutos (se errar 5 vezes, bloqueia por 15 min)
  • API: 100 requisições por segundo (suficiente pra 99% dos clientes)
  • Upload: 10 arquivos por minuto
  • Formulários: 20 envios por hora
  • Download: 50 por minuto (evita alguém baixar tudo de uma vez)
💡 Dica: Esses números são o "sweet spot" — nem tão apertado que o cliente de verdade sofre, nem tão solto que o abusador consegue entrar.

O que fazer se um cliente legítimo ficar bloqueado?

Às vezes acontece: você tem um script/ferramenta automática que manda muitas requisições legítimas, e o rate limiting bloqueia. Sem pânico!

  1. Identifique qual limite foi atingido (login, upload, etc.)
  2. Aumente um pouco esse limite específico (não todos!)
  3. Se for algo legítimo recorrente, considere colocar o IP do cliente numa "whitelist" (lista branca — não sofre limite)
  4. Teste de novo
💡 Dica: A whitelist é seu amigo. Use pra seus serviços internos, parceiros e ferramentas que você confia.

Monitorar abusos (bônus!)

Quer saber se alguém está tentando atacar seu site? Procure nos logs:

  • Painel → Logs ou Relatórios → procure por "rate limit exceeded" ou "bloqueado"
  • Você verá qual IP foi bloqueado, quantas vezes e por qual motivo
  • Se um IP aparecer toda hora, dá pra bannir permanentemente via painel

Checklist final

Antes de dormir em paz, confira:

  • ✅ Rate limiting está ativado no painel?
  • ✅ Os limites fazem sentido pro seu site? (loja = diferentes de blog, por exemplo)
  • ✅ Você testou login + upload + formulário pra garantir que funciona?
  • ✅ Clientes legítimos conseguem usar normalmente?
  • ✅ Você sabe onde encontrar os logs se algo estranho acontecer?

Se tudo isso está sim, você está blindado! 🛡️

Quando chamar a gente?

Rate limiting é seguro, mas se você tiver dúvida em qualquer passo, não tá sozinho:

  • Dúvida de qual limite usar? Manda uma mensagem — a gente recomenda.
  • Precisa customizar pra caso específico? A gente ajuda.
  • Cliente reclamando que tá bloqueado? Investigamos junto.
  • Viu um ataque/padrão estranho nos logs? Chamamos o time técnico.

Abra um ticket no painel ou manda direto no WhatsApp. A gente responde rápido! 💪

🥋 Resumindo: Rate limiting é a arte de dizer "não" do jeito certo. Seu site fica protegido, seus clientes não sofrem, e os bad guys vão procurar outro lugar mais fácil. É win-win-win.

Was this answer helpful?

« Back