Cloudflare:仅限 HTTP 白名单*

Cloudflare:仅限 HTTP 白名单*

我该如何将 Cloudflare 的 80/443 端口入站流量列入白名单(可在此处找到 -https://www.cloudflare.com/ips),但也允许所有由我们发起的 HTTP 流量通过,例如我们需要响应的远程 API 请求。

在 EC2 上运行 Amazon Linux。

谢谢

答案1

您有两个主要选择:

  • 网络 ACL(NACL)。它们更像传统的防火墙,它们在网络上运行,阻止未经授权的流量到达服务器/实例。规则数量有限,从记忆中看,它比 CloudFlare 服务器的数量要少。它们是无状态的,因此您需要添加入站和出站规则。
  • 安全组。这些是实例上运行的状态防火墙。如果您定义规则,则回复流量将自动被允许。规则限制比 NACL 更高

您需要与 EC2 实例关联的安全组具有 CloudFlare IP 地址和您自己的 IP 地址,从而允许访问所需的端口。我已经这样做了,这很容易。

您当然可以通过 CloudFlare 发出 API 请求,但直接请求可能更快、更可靠。

云形成

设置所有 CloudFlare IP 地址可能需要一些复制和粘贴操作 - 可能要花十分钟,所以还不算太糟。如果您想了解一点 CloudFormation,您可以使用 CloudFlare IP 地址自动创建和更新安全组。如果他们添加更多 IP,您只需更新脚本并再次运行它。最好在 CloudFormation 脚本中创建您的 VPC、子网、安全组、规则等。如果您不想重新开始,那么您可以让它引用现有资源。我可以添加一个脚本来为您提供起点,但调整它需要一点时间。

如果您不了解 CloudFormation,可能需要一天左右的时间才能使其正常工作,但对于生产环境来说,以这种方式做有很多优势。

相关内容