Mitigando DDoS no Nginx e CSF. Ataques DDoS nem sempre são gigantescos. Muitas vezes, o que derruba seu servidor é um HTTP flood simples, explorando login, XML-RPC ou APIs mal protegidas.
Neste guia você aprenderá como mitigar DDoS no Nginx usando rate limiting e complementar a proteção com o ConfigServer Security & Firewall.
A estratégia é simples: defesa em camadas.
🔥 O que é Rate Limiting no Nginx?
O Nginx possui módulos nativos que limitam requisições por IP, evitando abusos antes que eles consumam CPU e memória.
Ele atua na camada HTTP, bloqueando floods direcionados.
⚙️ Configurando Rate Limiting no Nginx
1️⃣ Criando a zona de controle
No bloco http {} do nginx.conf:
limit_req_zone $binary_remote_addr zone=limit_per_ip:10m rate=5r/s; limit_conn_zone $binary_remote_addr zone=conn_per_ip:10m;
Explicação:
5r/s→ 5 requisições por segundo por IP10m→ armazena milhares de IPs na memória- Controle de conexões simultâneas
2️⃣ Aplicando no server
Dentro do bloco server {}:
limit_req zone=limit_per_ip burst=10 nodelay; limit_conn conn_per_ip 20;
O que isso faz:
- Permite pequenos picos (burst)
- Bloqueia excesso imediatamente
- Limita conexões simultâneas por IP
3️⃣ Protegendo endpoints críticos (WordPress)
XML-RPC
location = /xmlrpc.php {
limit_req zone=limit_per_ip burst=5 nodelay;
}
Login
location = /wp-login.php {
limit_req zone=limit_per_ip burst=3 nodelay;
}
Isso reduz drasticamente brute force e HTTP floods.
🛡️ Reforçando com CSF Firewall
O ConfigServer Security & Firewall adiciona proteção em nível de firewall, bloqueando IPs abusivos.
Arquivo de configuração:
/etc/csf/csf.conf
🔹 Proteção contra SYN Flood
SYNFLOOD = "1" SYNFLOOD_RATE = "50/s" SYNFLOOD_BURST = "200"
🔹 Limite de conexões
CT_LIMIT = "100" CT_INTERVAL = "30" CT_BLOCK_TIME = "1800"
Se um IP exceder 100 conexões em 30 segundos, será bloqueado por 30 minutos.
🔹 Proteção HTTP básica
PORTFLOOD = "80;tcp;20;5,443;tcp;20;5"
🧠 Estratégia de Defesa em Camadas
Para mitigar DDoS no Nginx de forma eficiente:
- CDN (Cloudflare ou similar)
- Rate limiting no Nginx
- CSF Firewall bloqueando abuso
- Ajustes no kernel Linux
- Monitoramento ativo
⚠️ Erros Comuns
❌ Configurar rate muito baixo e bloquear usuários reais
❌ Esquecer IPv6
❌ Não considerar IP real quando usa proxy/CDN
❌ Bloquear Googlebot por limite agressivo
📊 Caso Real
Após aplicar rate limiting no Nginx + CSF:
- Load average caiu de 6.0 → 0.8
- Redução de 70% nas conexões simultâneas
- Fim de ataques XML-RPC
✅ Conclusão
Mitigar DDoS no Nginx com rate limiting é uma solução eficiente contra ataques HTTP simples.
Quando combinado com CSF Firewall, você cria uma proteção sólida, leve e eficaz para VPS e servidores dedicados.
Não substitui uma proteção de borda, mas impede que ataques pequenos derrubem sua infraestrutura.
FAQ
Não. Ele atua na camada HTTP. O ideal é combinar com firewall como CSF.
Depende do seu tráfego. Sites com cache permitem limites mais restritivos.
Sim. Principalmente para proteger login e XML-RPC.
Se mal configurado, pode bloquear bots legítimos. Ajuste corretamente.

