# /etc/nginx/sites-available/sac # Production FQDN: sac.kalinamall.ru # API: 127.0.0.1:8000 (systemd sac-api) # # Hostname: только sac.kalinamall.ru; остальные Host → 444 (см. default_server ниже). # # Порядок: 1) этот конфиг (только :80) → nginx -t → reload # 2) certbot --nginx -d sac.kalinamall.ru (добавит :443 и сертификаты) upstream sac_api { server 127.0.0.1:8000; keepalive 8; } # --- default: отклонить чужие Host (не sac.kalinamall.ru) --- server { listen 80 default_server; listen [::]:80 default_server; server_name _; return 444; } server { listen 80; listen [::]:80; server_name sac.kalinamall.ru; location /.well-known/acme-challenge/ { root /var/www/html; } client_max_body_size 2m; # SSH/WinRM и git-probe: backend ждёт до 900s location ~ ^/api/v1/(hosts/[0-9]+/actions/(agent-update|agent-update-fallback|ssh-test|winrm-test)|settings/agent-updates/test-git) { proxy_pass http://sac_api; proxy_http_version 1.1; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_connect_timeout 30s; proxy_send_timeout 960s; proxy_read_timeout 960s; } location / { proxy_pass http://sac_api; proxy_http_version 1.1; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_read_timeout 60s; } }