跳转到内容
搜索文档

HTTP/3 检测

最后更新 查看 MarkdownAgent 设置

HTTP/3 在 UDP 上使用 QUIC 协议而不是 TCP。因为 Gateway 的默认代理仅处理 TCP 流量,所以 HTTP/3 检测需要开启 UDP 代理。如果不启用它,HTTP/3 流量将绕过 HTTP 检测。网络策略仍然适用于底层的 UDP 流量。

Gateway 最后对 HTTP/3 流量应用 HTTP 策略。有关更多信息,请参阅执行顺序

开启 HTTP/3 检测

在能够检测任何 HTTPS 流量之前,您必须在设备上部署用户端证书并开启TLS 解密。要检测 HTTP/3 流量,您还必须开启 UDP 的Gateway 代理

要启用 UDP 的 Gateway 代理和 TLS 解密:

  1. Cloudflare 仪表板中,转到 Zero Trust(Zero Trust)> Traffic policies(流量策略)> Traffic settings(流量设置)
  2. 在 **Proxy and inspection(代理和检查)**中,打开 Allow Secure Web Gateway to proxy traffic(允许 Secure Web Gateway 代理流量)
  3. 选择 TCPUDP
  4. 打开 TLS decryption(TLS 解密)

应用程序限制

Gateway 可以通过建立 HTTP/3 代理连接来检测来自 Mozilla Firefox 和 Microsoft Edge 的 HTTP/3 流量。然后,Gateway 将终止 HTTP/3 连接,解密并检测流量,并通过 HTTP/2 连接到目标服务器。Gateway 还可以检测其他 HTTP 应用程序,如 cURL。

如果同时启用了 UDP 代理和 TLS 解密,Google Chrome 会自动取消 HTTP/3 连接并在 HTTP/2 上重试,Gateway 可以对其进行检测。如果关闭了 UDP 代理或 TLS 解密,来自 Chrome 的 HTTP/3 流量将完全绕过检测。

免除 HTTP/3 流量的检测

如果您需要从客户端到源站具有端到端加密的 HTTP/3 流量,同时仍想使用 Gateway 代理,则可以创建一条 Do Not Inspect(不检测)HTTP 策略来匹配所需的流量。使用 Do Not Inspect(不检测) 策略允许 HTTP/3 流量通过绕过 Gateway 的 TLS 解密和检测,来保留代理性能和端到端加密。

强制执行 HTTP/2 流量

要在不启用 UDP 代理的情况下将 Gateway 策略应用于 HTTP 流量,您必须在用户的浏览器中关闭 QUIC,以确保只有 HTTP/2 流量到达 Gateway。

Google Chrome

  1. 转到 chrome://flags
  2. Experimental QUIC protocol 设置为 Disabled
  3. 重新启动 Chrome。

Safari

您无法在 Safari 中关闭 QUIC。所有流量都将通过 HTTP/3 发送。

Firefox

  1. 转到 about:config
  2. 如果收到警告,选择 Accept the Risk and Continue(接受风险并继续)
  3. network.http.http3.enable 设置为 false
  4. 重新启动 Firefox。

Microsoft Edge

  1. 转到 edge://flags
  2. Experimental QUIC protocol 设置为 Disabled
  3. 重新启动 Edge。

这篇文档对您有帮助吗?