У DSM потрібно створити правило Reverse Proxy:
1. Відкрийте Control Panel > Login Portal > Advanced > Reverse Proxy > Create.
2. У General задайте:
- Reverse Proxy Name — будь-яка назва.
- Source:
- Protocol: HTTPS
- Hostname: ваш субдомен
- Port: потрібний зовнішній порт
- за потреби увімкніть HSTS
- Destination:
- Protocol: HTTP або HTTPS
- Hostname: внутрішню IP-адресу/ім’я NAS або сервісу
- Port: порт цільового сервісу
3. Натисніть Save. Можна створити кілька правил reverse proxy. [6]
Для nginx-прикладу з проксі-заголовками у фрагменті вказано такі налаштування:
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]
Якщо ви хочете відкривати DSM через reverse proxy по піддомену, фрагменти підтверджують саме схему subdomain -> NAS/service. Для HTTP→HTTPS редиректу у reverse proxy у фрагменті [8] чіткої робочої комбінації немає; там прямо зазначено, що це не спрацювало. Тобто в цих матеріалах немає підтвердженого способу автоматично змусити reverse proxy DSM редиректити HTTP на HTTPS.
Джерела: [2], [6], [8]