我们为远程 Windows 客户端(笔记本电脑、远程用户等)配备了面向互联网的 WSUS 服务器。作为额外的保护层,我们将 WSUS 服务器置于使用 ARR/URL Rewrite 的反向代理服务器后面,该服务器将请求代理到我们的更新 URL 并将其转发到实际的 WSUS 服务器。
一切似乎运行良好 - 客户端从 WSUS 获取更新信息,并且能够下载任何所需的更新。
但是,最近我尝试使用补丁管理解决方案(来自 Solarwinds)时注意到一个小问题,该解决方案本质上位于 WSUS 服务器之上,可以主动管理远程客户端。如果我尝试通过补丁管理器管理远程客户端,它会使用该客户端的代理服务器的 IP 地址,而不是客户端的实际远程 IP 地址。DNS 解析失败,身份验证失败,大概是因为请求发往代理服务器而不是远程客户端。
如何确保内部 WSUS 服务器获取客户端的实际远程 IP 地址?
答案1
我遇到过类似的问题。我发现我需要配置代理服务器以在将流量转发到 WSUS 时传递原始源 IP 地址。
答案2
https://www.cyberciti.biz/faq/nginx-restore-real-ip-address-when-behind-a-reverse-proxy/
location / {
proxy_pass https://wsus:443/;
real_ip_header X-Forwarded-For;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}