把一台工作站加入允许列表,并不等于允许新的下游代理以它的名义发起连接:

workstation → local proxy → corporate parent → website

本地代理会与父代理建立一条新连接。通常父代理看到的是该代理的出站地址,也可能经过 NAT 转换。原始工作站的地址不会因为发起了整个请求就成为这条新连接的源地址。

找出父代理实际收到的直接来源。只授权下游代理访问预期服务,并保留下游实例上的客户端限制。否则,被放行的中间层就能让任何能够访问它的人获得访问权限。

对简单的套接字对端解读存在一个刻意保留的例外。Squid 6 和 7 可以跟踪来自显式受信对端的 X-Forwarded-For,并把由此得到的间接客户端地址用于选定功能。相关设置决定源 ACL 是否使用该派生身份;启用此功能时,src 并不总是原始对端。

只信任由中间层正确清洗并提供的前转身份。客户端自行提供的任意 X-Forwarded-For 只是声明值,不是已认证的来源。在策略允许的情况下,同时记录直接对端和受信任的原始客户端:前者标明谁连接到了父代理,后者标明下游代理为谁服务。

相关文章