为 CloudFront 和 ELB 实施 AWS WAF

Implementing AWS AWF over CloudFront and ELB

我们在 Amazon AWS 中有一个包含两个组件的基础设施。一个 API 前面有一个负载均衡器,一个网页前面有一个 CloudFront。我们正在寻找开始解决安全问题的选项,例如阻止恶意 IP。我们已经看到 Amazon AWS AWF 可能是一个有趣的选择,但我有一些问题:

感谢您的回复。

我们能否创建一个具有一条规则的 ACL,并将其绑定到一个条件,包括我们要阻止的多个 IP?

是的,一个 IP 匹配条件最多可以匹配 10,000 个 IP 地址或 CIDR 范围。

An IP match condition lists up to 10,000 IP addresses or IP address ranges that your requests originate from. Later in the process, when you create a web ACL, you specify whether to allow or block requests from those IP addresses.

https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-ip-conditions.html

我们能否为 ELB 和 CloudFront 分配相同的 ACL,或者我们需要创建独立的 ACL and/or 规则?

这在某种程度上取决于您是否使用 AWS Firewall Manager。如果你这样做,那么你可以在一个地方管理它们。

否则,您必须单独执行此操作,因为 CloudFront 的 WAF 和 ALB 的 WAF 实际上是多个独立的服务 -- CloudFront 有一个 "global region" 服务,每个 EC2 区域都有一个服务。当您构建条件和 ACL 时,您可以在要使用它们的特定服务中定义它们(或者 Firewall Manager 将它们部署在您配置的位置)。

无论哪种方式,WAF 都会针对部署规则和 ACL 的每个区域向您收费,但您可以在一个区域内的多个资源中重复使用它们,而无需额外付费。