nginx descartando conexões
| Item | Detalhe |
|---|---|
| Serviço afetado | nginx |
| Severidade | aviso |
| Dispara quando | increase(nginx_connections_accepted[5m]) - increase(nginx_connections_handled[5m]) > 0 por mais de 2 minutos. |
O que representa
O nginx aceitou conexões que não conseguiu tratar: bateu num limite de recursos (worker_connections, hoje 1024, ou descritores de arquivo). Clientes ficam sem resposta. Um ataque de conexões lentas (slowloris) causa o mesmo.
Como verificar no Grafana
- Dashboard nginx, aba Visão geral: painéis
Conexões,Conexões descartadas por segundo,CPUeMemória. - Aba Segurança:
Top IPs (suspeitos, 444 e 429)mostra se um IP concentra as conexões.
Como agir
- Se um IP ou faixa concentra o tráfego, bloqueie (abaixo) e acompanhe
Conexões descartadascair a zero. - Se o tráfego é legítimo, o limite é pequeno: aumentar
worker_connectionse medir depois (card TN5.2).
Se for ataque ou incidente real
Conexões lentas ou volume anormal de poucos IPs:
- Adicione
deny <ip>;(ou a faixa,deny <ip>/24;) noserverdo host atingido, emnginx/conf/do repositórioreverse-proxy. - Urgente: aplique na VM e recarregue com
docker exec nginx nginx -s reload; depois abra o PR com a mesma mudança (deploy é manual). - Se o ataque é distribuído (muitos IPs), o nginx sozinho não segura: é o caso da defesa na borda (TS N5, bloqueio automático e CDN).
Casos conhecidos
Nunca disparou em produção até hoje: qualquer disparo merece olhar.