@@ -38,13 +38,13 @@ server {
|
||||
# En el bloque http {}
|
||||
http {
|
||||
# Zona de rate limiting para API general
|
||||
limit_req_zone $binary_remote_addr zone=api:10m rate=30r/m;
|
||||
limit_req_zone $binary_remote_addr zone=api:10m rate=30r/h;
|
||||
|
||||
# Zona específica para ping (más restrictiva)
|
||||
limit_req_zone $binary_remote_addr zone=ping:10m rate=10r/m;
|
||||
limit_req_zone $binary_remote_addr zone=ping:10m rate=5r/10m;
|
||||
|
||||
# Rate limiting por IP real (después del proxy)
|
||||
limit_req_zone $realip_remote_addr zone=real_ip:10m rate=10r/m;
|
||||
limit_req_zone $realip_remote_addr zone=real_ip:10m rate=5r/10m;
|
||||
}
|
||||
|
||||
# En el bloque server {}
|
||||
@@ -144,7 +144,7 @@ curl -H "X-Forwarded-For: 203.0.113.1" http://your-domain.com/api/status
|
||||
|
||||
```bash
|
||||
# Script para probar rate limiting
|
||||
for i in {1..15}; do
|
||||
for i in {1..8}; do
|
||||
echo "Request $i:"
|
||||
curl -s http://your-domain.com/api/ping \
|
||||
-H "Content-Type: application/json" \
|
||||
|
||||
Referencia en una nueva incidencia
Block a user