No DSM, vá a Control Panel > Login Portal > Advanced > Reverse Proxy e crie uma regra:
- Source:
- Protocol: HTTPS
- Hostname: o subdomínio
- Port: a porta pública pretendida
- opcionalmente Enable HSTS
- Destination:
- Protocol: HTTP ou HTTPS, conforme o serviço interno
- Hostname: IP/host interno do NAS ou do serviço
- Port: a porta interna do app
Guarde a regra. O DSM permite criar várias regras de reverse proxy. [6]
Se estiver a usar Nginx no servidor intermédio, o fragmento com cabeçalhos mostra este conjunto típico para passar a ligação corretamente:
proxy_set_header Connection $connection_upgrade;
proxy_set_header Early-Data $ssl_early_data;
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Forwarded-Ssl on;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass $upstream_proto://$upstream_app:$upstream_port;
[2]
Um exemplo antigo do fórum para expor um serviço por reverse proxy usa:
- Source: HTTPS, hostname *, porta 5002
- Destination: HTTP, hostname do IP interno, porta 80
Nota: esse exemplo é de DSM 6 e pode estar desatualizado, mas mostra a mesma lógica de encaminhamento. [5]
Se o objetivo for apenas publicar ficheiros por links sem mudar portas, o fragmento não traz uma solução específica para path-based proxy no DSM; a KB só confirma a configuração do reverse proxy por host/porta. [4][6]
Fontes usadas: [2], [5], [6], [4]