Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
32 lines
1.3 KiB
Cheetah
32 lines
1.3 KiB
Cheetah
# hal.ariweb.net — HAL(제어 평면). 운영자 콘솔 /ops 는 HAL 이 네트워크 관문(허용 CIDR 또는 접근권 쿠키)을 적용한다.
|
|
# Agent 는 /agent/v1 로, 포털은 /portal/v1 로 서명된 요청을 보낸다. 큰 전송(/agent/v1/transfers)은 본문 제한을 넉넉히 둔다.
|
|
server {
|
|
listen 80;
|
|
listen [::]:80;
|
|
server_name {{HAL_HOST}};
|
|
location ^~ /.well-known/acme-challenge/ { root {{ACME_ROOT}}; default_type text/plain; }
|
|
location / { return 301 https://$host$request_uri; }
|
|
}
|
|
server {
|
|
listen 443 ssl http2;
|
|
listen [::]:443 ssl http2;
|
|
server_name {{HAL_HOST}};
|
|
server_tokens off;
|
|
client_max_body_size 0;
|
|
ssl_certificate {{CERT_DIR}}/fullchain.pem;
|
|
ssl_certificate_key {{CERT_DIR}}/privkey.pem;
|
|
include /etc/letsencrypt/options-ssl-nginx.conf;
|
|
add_header Strict-Transport-Security "max-age=31536000" always;
|
|
add_header X-Content-Type-Options "nosniff" always;
|
|
location / {
|
|
proxy_pass http://127.0.0.1:{{PORT}};
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-Proto https;
|
|
proxy_request_buffering off;
|
|
proxy_buffering off;
|
|
proxy_read_timeout 120s;
|
|
}
|
|
}
|