Fix security
This commit is contained in:
20
nginx.conf
20
nginx.conf
@@ -17,6 +17,10 @@ http {
|
||||
# File upload limit (15 MB)
|
||||
client_max_body_size 15M;
|
||||
|
||||
# Rate limiting zones
|
||||
limit_req_zone $binary_remote_addr zone=api_auth:10m rate=10r/m;
|
||||
limit_req_zone $binary_remote_addr zone=api_general:10m rate=60r/m;
|
||||
|
||||
upstream backend {
|
||||
server backend:8000;
|
||||
}
|
||||
@@ -37,8 +41,22 @@ http {
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
}
|
||||
|
||||
# Backend API
|
||||
# Auth API - strict rate limit (10 req/min with burst of 5)
|
||||
location /api/v1/auth {
|
||||
limit_req zone=api_auth burst=5 nodelay;
|
||||
limit_req_status 429;
|
||||
|
||||
proxy_pass http://backend;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
}
|
||||
|
||||
# Backend API - general rate limit (60 req/min with burst of 20)
|
||||
location /api {
|
||||
limit_req zone=api_general burst=20 nodelay;
|
||||
limit_req_status 429;
|
||||
|
||||
proxy_pass http://backend;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
|
||||
Reference in New Issue
Block a user