直接說結論
商業版的 Nginx 有 NTLM 模組可以直接使用
Open Source 的版本
就只能透過 stream 模組把帳號密碼往後送
Ubuntu 的 Nginx 有把 stream module 編譯進來
查看一下 /etc/nginx/modules-enabled 目錄就知道了
如果你的 Nginx 套件沒有自帶 stream 模組, 就得自己安裝
具體範例寫法如下
upstream your_backend {
server 10.10.10.10:80;
keepalive 16;
}
server {
listen 80;
server_name your.host.com.tw;
location / {
proxy_pass http://your_backend/;
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header http_x_forwarded_for $remote_addr;
proxy_set_header remote_addr $remote_addr;
proxy_buffering off;
proxy_redirect off;
proxy_pass_request_headers on;
client_max_body_size 0;
proxy_read_timeout 36000s;
}
}
弄好再用 certbot 把 SSL 加上去就可以收工了