我有一个使用 Squid 或类似程序的 HTTP 代理,并且代理配置为需要代理身份验证。众所周知,代理身份验证在拦截模式下不起作用。我也有很多移动客户端。
我目前正在使用 WPAD 来配置这些设备,但是最近的答案提醒我这会引发一个安全问题。
有哪些替代方法可以在客户端机器上配置代理,并且也必须在外部网络上使用?
答案1
很遗憾你不能设置网络位置特定的 Internet Explorer\Internet 设置 GPO,因为这可以很好地解决这个问题。好吧。
WPAD 实际上只是一个供客户端获取其代理自动配置(PAC)文件。PAC 文件包含浏览器需要查找和验证其本地代理的信息,实际上只是 JavaScript。在这种情况下,我会创建一个 PAC 文件,其中包含足够的逻辑来检查客户端是否连接到您的内部网络并可以在本地访问代理,是否通过远程 VPN 连接连接到您的内部网络(您可能仍希望代理远程客户端)或连接到完全外部的网络,然后将适当的代理信息传递给浏览器。请参阅此问题有关如何执行此操作的示例。
然后,您可以构建一个 GPO:
- 将 PAC 文件推送到客户端的 C:\,这样当他们不在本地网络上时就可以使用该文件(
User Configuration\Preferences\Windows Settings\Files
) - 配置 Internet Explorer 以使用它 (
User Configuration\Polices\Windows Settings\Internet Explorer Maintenance\Connection\Automatic Browser Configuration
)
我还应该提到,许多 OEM 提供第三方工具来进行“网络配置文件”管理。我相信戴尔有一个名为网络连接管理器的工具,与他们的 NIC 驱动程序捆绑在一起,尽管无法集中管理它,这使它在我们的环境中无法启动。可能还有其他付费的第三方应用程序提供这些设置的网络配置文件/位置特定管理。