Share Feedback to help us keep improving.
2.2. 已知的代理
当自动化控制器配置了 REMOTE_HOST_HEADERS = ['HTTP_X_FORWARDED_FOR', 'REMOTE_ADDR', 'REMOTE_HOST'] 时,它假定 X-Forwarded-For 的值源自自动化控制器前面的负载均衡器。
如果在不使用负载均衡器的情况下可以访问自动化控制器,或者代理没有验证标头,则 X-Forwarded-For 的值可以被证明为原始 IP 地址。
在 REMOTE_HOST_HEADERS 设置中使用 HTTP_X_FORWARDED_FOR 可能会存在安全漏洞。
要避免这种情况,您可以配置允许的已知代理列表。
-
在导航面板中,选择
。 在 Proxy IP Allowed List 字段中输入服务应该信任自定义远程标头值的代理 IP 地址列表。
注意不在已知代理列表上的负载均衡器和主机会导致请求被拒绝。
2.2.1. 配置已知的代理 复制链接链接已复制到粘贴板!
了解如何为自动化控制器配置已知代理列表,将代理 IP 地址添加到 System Settings 页面中的 Proxy IP Allowed List 字段中。
流程
-
在导航面板中,选择
。 在 Proxy IP Allowed List 字段中,使用以下示例的语法输入允许连接到您的自动化控制器的 IP 地址:
代理 IP 允许列表示例
[
"example1.proxy.com:8080",
"example2.proxy.com:8080"
]
+
-
代理 IP 允许列表需要列表中的代理正确清理标头输入,并正确设置
X-Forwarded-For值等于客户端的实际源 IP。自动化控制器可以依赖 Proxy IP Allowed List 中的 IP 地址和主机名来为X-Forwarded-For提供非欺骗的值。 不要将
HTTP_X_FORWARDED_FOR配置为 Remote Host Headers 中的项目,除非满足以下条件:- 您使用带有 ssl 终止的代理环境;
-
代理提供
X-Forwarded-For标头的清理或验证处理,以防止客户端欺骗; -
/etc/tower/conf.d/remote_host_headers.py定义PROXY_IP_ALLOWED_LIST,它只包含可信代理或负载均衡器的原始 IP 地址。
+ .点 保存设置。