帕洛阿尔托网络如何处理 HTTP 范围扩展?
Question
帕洛阿尔托网络如何处理 HTTP 范围选项?
Environment
- PAN-OS 7.1及以上
- 帕洛阿尔托网络 firewall
Answer
以下描述是帕洛阿尔托网络如何处理 HTTP 范围扩展。
HTTP范围选项是什么?
HTTP标题中的范围选项 HTTP 是客户端计算机仅针对指定字节范围请求从服务器部分下载文件的一种方式。 这是计算机在恢复已暂停的下载时使用的选项。
当从网站部分下载 exe 文件以及执行该文件时,也使用此选项。联系服务器部署可执行文件。 在这种情况下,客户端可能需要对发送的请求进行部分响应 GET 。 在这种情况下,使用此选项。
在某些情况下,客户端可能会缓存文件的一部分,以及使用 HTTP "接受范围"标题对文件其余部分的请求。
请参阅 RFC http 请求(第 14.35.2 节):https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35
为什么和何时相关?
当排除开放式安全 policy 允许通过 Palo Alto 网络请求特定网站进行部分范围的 Web 流量的问题时,这一点是相关的 firewall 。
Palo Alto 网络 firewall 以两种方式处理此请求
:1) 允许客户端通过启用此选项发送数据包:(设备>设置> 内容 - ID >允许 HTTP 标题范围选项
) 2) 允许下载,当 HTTP 范围选项在流中看到 HTTP , firewall 并且无法处理它们。
例如,浏览器正在下载部分 ZIP 文件。 您可以在"下载"文件夹中看到部分文件。 恢复时,它只请求缺少的部分文件。 无法 firewall 处理此问题。
要解决这个问题,请使用以下命令:
设置设备孔设置 ctd 跳过块 -http 范围否 => 在 PAN-OS 7.1
设置设备孔设置 ctd 允许 - http 范围是 => 在 PAN-OS 8.1 及以上。
观察到的症状
当 firewall 无法处理此类请求时,您将在客户的防火墙上看到不会有任何掉落计数器或数据包。 但是,在安全中使用配置文件时 policy ,文件下载会话会在部分下载文件后挂起,文件下载永远不会完成。
当看到包含此选项的包时,全球计数器将指示计数器" HTTP 检测到的范围"(不是计数器的实际名称,但它确实包含http_range名称)。
在这种情况下,使用以下命令建议的解决方法:
设置设备孔设置 ctd 跳过块-http 范围否 => 在 PAN-OS 7.1
设置设备孔设置 ctd 允许 -http 范围是 => 在 PAN-OS 8.1 及以上。
注:设置范围选项后需要提交操作 HTTP 。