You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过反向代理让Cloud Run仅接受Cloudflare的流量?

确保Cloud Run仅接收Cloudflare流量的实现方案

一、IP白名单限制

Cloudflare会公布其所有用于代理请求的IP段,你可以将这些IP添加到Cloud Run的访问控制列表中,拒绝非Cloudflare来源的流量:

  • 获取Cloudflare官方IP段:Cloudflare提供固定的IPv4和IPv6地址段,直接使用这些地址段配置白名单即可
  • 配置Cloud Run访问控制:
    1. 进入Cloud Run控制台的服务详情页,切换到「安全」标签
    2. 在「Ingress 控制」中选择「内部和云负载平衡」,确保仅授权来源可访问
    3. 在「授权网络」中添加Cloudflare的所有IP段,保存配置
    4. 也可通过gcloud命令快速配置:
    gcloud run services update [你的服务名] \
      --ingress=internal-and-cloud-load-balancing \
      --allow-unauthenticated \
      --network=default \
      --add-authorized-network=[Cloudflare IPv4段1] \
      --add-authorized-network=[Cloudflare IPv6段1]
    

二、Origin Pulls证书验证(更安全的方式)

IP白名单存在被伪造的风险,Origin Pulls通过证书验证确保请求确实来自Cloudflare,详细步骤如下:

1. 在Cloudflare生成Origin CA证书

  • 登录Cloudflare域名管理页,切换到「SSL/TLS」→「源服务器」标签
  • 点击「创建证书」,选择「Origin CA」,填写覆盖你的自定义域名
  • 设置证书有效期后点击「创建」,下载PEM格式的证书和私钥文件

2. 将证书上传到Cloud Run

  • 进入Cloud Run服务的「自定义域名」配置页,点击「管理证书」
  • 选择「上传新证书」,上传刚才下载的证书和私钥,绑定自定义域名并保存

3. 启用Cloudflare Origin Pulls

  • 返回Cloudflare的「SSL/TLS」→「源服务器」标签,找到「Origin Pulls」选项并开启
  • 确认选择「使用Cloudflare Origin CA证书」,保存配置

完成后,只有Cloudflare代理的请求会携带有效Origin CA证书,Cloud Run才会处理,彻底阻断非Cloudflare来源的流量。

补充说明

  • 同时启用IP白名单和Origin Pulls可实现双重验证,进一步提升安全性
  • Cloudflare的IP段会定期更新,建议定期检查并同步更新Cloud Run的授权网络列表
  • 确保Cloud Run自定义域名的TLS配置为「自定义证书」,而非Google管理证书,才能使用上传的Origin CA证书

内容的提问来源于stack exchange,提问作者Ayyappa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 05:33:17