亚马逊 VPC 网络访问控制列表 (ACL) 策略 - Amazon WAFAmazon Firewall Manager、和 Amazon Shield Advanced
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

亚马逊 VPC 网络访问控制列表 (ACL) 策略

本节介绍 Amazon Firewall Manager 网络 ACL 策略的工作原理,并提供使用这些策略的指导。有关使用控制台创建网络 ACL 策略的指南,请参阅创建网络 ACL 策略

有关 Amazon VPC 网络访问控制列表 (ACL) 的信息,请参阅 Amazon VPC 用户指南中的使用网络 ACL 控制子网的流量

您可以使用 Firewall Manager 网络 ACL 策略来管理您的组织的亚马逊虚拟私有云 (Amazon VPC) 网络访问控制列表 (ACL)。 Amazon Organizations您可以定义策略的网络 ACL 规则设置以及要在其中强制执行这些设置的帐户和子网。在整个组织中添加或更新账户和子网时,Firewall Manager 会持续将您的策略设置应用于账户和子网。有关策略范围和的信息 Amazon Organizations,请参阅Amazon Firewall Manager 政策范围和《Amazon Organizations 用户指南》

在定义 Firewall Manager 网络 ACL 策略时,除了标准的防火墙管理器策略设置(例如名称和范围)外,还需要提供以下内容:

  • 入站和出站流量处理的第一条和最后一条规则。Firewall Manager 在策略范围内的网络 ACL 中强制其存在和排序,或者报告不合规。您的个人账户可以创建自定义规则,在政策的第一条和最后一条规则之间运行。

  • 当修复会导致网络 ACL 中的规则之间的流量管理冲突时,是否强制修复。这仅在为策略启用修复时适用。

Firewall Manager 网络 ACL 规则和标记

本节介绍网络 ACL 策略规则规范和由 Firewall Manager 管理的网络 ACL。

在托管网络 ACL 上进行标记

Firewall Manager 使用值为的FMManaged标记来标记托管网络 ACL true。Firewall Manager 仅对设置了此标记的网络 ACL 执行修复。

您在策略中定义的规则

在您的网络 ACL 策略规范中,您可以为入站流量定义要首先和最后运行的规则,以及要为出站流量首先和最后运行的规则。

默认情况下,您最多可以定义 5 个入站规则,用于策略中第一个和最后一个规则的任意组合。同样,您最多可以定义 5 个出站规则。有关这些限制的更多信息,请参阅软限额。有关网络 ACL 的一般限制的信息,请参阅《亚马逊 VPC 用户指南》中的 Amazon VPC 网络 ACL 配额

您不为策略规则分配规则编号。相反,您可以按照评估规则的顺序指定规则,然后 Firewall Manager 使用该顺序在其管理的网络 ACL 中分配规则编号。

除此之外,您还可以管理策略的网络 ACL 规则规范,就像通过 Amazon VPC 管理网络 ACL 中的规则一样。有关 Amazon VPC 中网络 ACL 管理的信息,请参阅 Amazon VP C 用户指南中的使用网络 ACL 控制子网流量和使用网络 ACL

托管网络 ACL 中的规则

Firewall Manager 在其管理的网络 ACL 中配置规则,方法是将策略的第一条和最后一条规则放在个人账户管理员定义的任何自定义规则之前和之后。Firewall Manager 会保留自定义规则的顺序。从编号最低的规则开始评估网络 ACL。

Firewall Manager 首次创建网络 ACL 时,它会使用以下编号定义规则:

  • 第一条规则:1、2、... — 由您在 Firewall Manager 网络 ACL 策略中定义。

    Firewall Manager 分配从 1 开始的规则编号,增量为 1,规则的顺序与您在策略规范中的顺序相同。

  • 自定义规则:5,000、5,100、... — 由个人账户管理员通过 Amazon VPC 进行管理。

    Firewall Manager 为这些规则分配的数字从 5,000 开始,后续每条规则以 100 为递增。

  • 最后的规则:... 32,765、32,766 — 由您在 Firewall Manager 网络 ACL 策略中定义。

    Firewall Manager 会分配以尽可能高的数字(32766)结尾的规则编号,增量为 1,规则的顺序与您在策略规范中的顺序相同。

网络 ACL 初始化后,Firewall Manager 无法控制各个帐户在其托管网络 ACL 中所做的更改。个人账户可以在不影响其合规性的情况下更改网络 ACL,前提是任何自定义规则在策略的第一条和最后一条规则之间保持编号,并且第一条和最后一条规则保持其指定的顺序。作为最佳实践,在管理自定义规则时,请遵守本节中描述的编号。

Firewall Manager 如何启动子网的网络 ACL 管理

当 Firewall Manager 将子网与 Firewall Manager 创建并标记为的网络 ACL 关联时,它将开始管理该子网的FMManaged网络 ACL true

遵守网络 ACL 策略要求子网的网络 ACL 将策略的第一条规则放在第一位,按策略中指定的顺序排在最后,将最后一条规则按顺序排在最后,所有其他自定义规则位于中间。这些要求可以通过子网已关联的非托管网络 ACL 或托管网络 ACL 来满足。

当 Firewall Manager 将网络 ACL 策略应用于与非托管网络 ACL 关联的子网时,Firewall Manager 会按顺序检查以下内容,并在确定可行的选项时停止:

  1. 关联的网络 ACL 已经合规 — 如果当前与子网关联的网络 ACL 合规,则 Firewall Manager 会保留该关联,并且不会启动该子网的网络 ACL 管理。

    Firewall Manager 不会更改或以其他方式管理它不拥有的网络 ACL,但只要它合规,Firewall Manager 就会将其保留在原处,只监控其策略合规性。

  2. 兼容的托管网络 ACL 可用 — 如果 Firewall Manager 已经在管理符合所需配置的网络 ACL,则可以选择此选项。如果启用了修复,Firewall Manager 会将子网与其关联起来。如果禁用修复,Firewall Manager 会将子网标记为不合规,并提供替换网络 ACL 关联作为补救选项。

  3. 创建新的合规托管网络 ACL-如果启用了修复,Firewall Manager 将创建一个新的网络 ACL 并将其与子网关联。否则,Firewall Manager 会将子网标记为不合规,并提供修复选项,包括创建新的网络 ACL 和替换网络 ACL 关联。

如果这些步骤失败,Firewall Manager 会报告子网的不合规。

当子网首次进入作用域以及子网的非托管网络 ACL 不合规时,Firewall Manager 会遵循以下步骤。

Firewall Manager 如何修复不合规的托管网络 ACL

本节介绍当其托管网络 ACL 不符合策略时,Firewall Manager 如何对其进行修复。Firewall Manager 仅修复托管网络 ACL(标签设置为)。FMManaged true有关不由 Firewall Manager 管理的网络 ACL,请参阅初始网络 ACL 管理

修复可恢复第一条、自定义规则和最后一条规则的相对位置,并恢复第一条和最后一条规则的顺序。在修复期间,Firewall Manager 不一定会将规则移动到它在网络 ACL 初始化中使用的规则编号。有关这些规则类别的初始数字设置和说明,请参见初始网络 ACL 管理

为了建立合规的规则和规则顺序,Firewall Manager 可能需要在网络 ACL 内移动规则。Firewall Manager 尽可能通过维护现有合规规则顺序来保留网络 ACL 的保护。例如,它可能会暂时将规则复制到新位置,然后对原始规则执行有序移除,在此过程中保留相对位置。

这种方法可以保护您的设置,但也需要在网络 ACL 中留出空间来存放临时规则。如果 Firewall Manager 达到网络 ACL 中规则的限制,它将停止修复。发生这种情况时,网络 ACL 仍然不合规,Firewall Manager 会报告原因。

如果某个帐户向由 Firewall Manager 管理的网络 ACL 添加了自定义规则,并且这些规则干扰了防火墙管理器的修复,Firewall Manager 会停止网络 ACL 上的任何修复活动并报告冲突。

强制补救

如果为策略选择 auto 修复,则还需要指定是对第一条规则还是最后一条规则强制修正。

当 Firewall Manager 在自定义规则和策略规则之间的流量处理中遇到冲突时,它会引用相应的强制修复设置。如果启用了强制修复,则无论存在冲突,Firewall Manager 都会应用补救措施。如果未启用此选项,Firewall Manager 将停止修复。无论哪种情况,Firewall Manager 都会报告规则冲突并提供补救选项。

规则计数要求和限制

在修复期间,Firewall Manager 可能会临时复制规则,以便在不更改规则提供的保护的情况下移动规则。

对于入站或出站规则,Firewall Manager 执行补救可能需要的最大规则数量如下:

2 * (the number of rules defined in the policy for the traffic direction) + the number of custom rules defined in the network ACL for the traffic direction

网络 ACL 和网络 ACL 策略受可变规则限制的约束。如果 Firewall Manager 的修复工作达到极限,它将停止尝试修复并报告违规行为。

要为 Firewall Manager 腾出空间来执行其修复活动,您可以请求提高限制。或者,您可以更改策略或网络 ACL 中的配置以减少使用的规则数量。

有关网络 ACL 限制的信息,请参阅 Amazon VPC 用户指南中的网络 ACL 上的 Amazon VPC 配额

补救失败时

更新网络 ACL 时,如果 Firewall Manager 出于任何原因需要停止,它不会回滚更改,而是使网络 ACL 处于临时状态。如果您在FMManaged标记设置为的网络 ACL 中看到重复的规则,则 Firewall Manager 可能正在对其进行修复。true更改可能会在一段时间内部分完成,但由于 Firewall Manager 采用的补救方法,这不会中断流量或降低对关联子网的保护。

当 Firewall Manager 不能完全修复不合规的网络 ACL 时,它会报告关联子网的不合规情况,并建议可能的补救选项。

修复失败后重试

在大多数情况下,如果 Firewall Manager 未能完成对网络 ACL 的补救更改,它最终会重试更改。

当补救达到网络 ACL 规则计数限制或 VPC 网络 ACL 计数限制时,情况除外。Firewall Manager 无法执行占用超过其限制设置的 Amazon 资源的补救活动。在这些情况下,您需要减少计数或增加限制才能继续。有关限制的信息,请参阅《亚马逊 VPC 用户指南》中的 Amazon VPC 网络 ACL 配额

Firewall Manager 网络 ACL 合规性报告

Firewall Manager 监控并报告连接到范围内子网的所有网络 ACL 的合规性。

一般而言,不合规发生在诸如规则顺序不正确或策略规则与自定义规则之间的流量处理行为冲突之类的情况。不合规报告包括违规行为和补救选项。

Firewall Manager 报告网络 ACL 策略的合规性违规情况的方式与其他策略类型相同。有关合规性报告的信息,请参阅查看 Amazon Firewall Manager 策略的合规性信息

政策更新期间不合规

修改网络 ACL 策略后,在 Firewall Manager 更新该策略范围内的网络 ACL 之前,Firewall Manager 会将这些网络 ACL 标记为不合规。严格来说,即使网络 ACL 可能合规,Firewall Manager 也会这样做。

例如,如果您从策略规范中删除规则,而范围内的网络 ACL 仍有额外的规则,则其规则定义可能仍符合该策略。但是,由于额外规则是防火墙管理器管理的规则的一部分,因此防火墙管理器将其视为违反当前策略设置的行为。这与 Firewall Manager 查看添加到防火墙管理器托管网络 ACL 的自定义规则的方式不同。

使用 Firewall Manager 网络 ACL 策略的最佳实践

本节列出了有关使用 Firewall Manager 网络 ACL 策略和托管网络 ACL 的建议。

参考FMManaged标签以识别由 Firewall Manager 管理的网络 ACL

Firewall Manager 管理的网络 ACL 的FMManaged标签设置为。true使用此标签可以帮助区分您自己的自定义网络 ACL 和通过 Firewall Manager 管理的网络 ACL。

不要修改网络 ACL 上FMManaged标签的值

Firewall Manager 使用此标签通过网络 ACL 设置和确定其管理状态。

不要修改具有 Firewall Manager 托管的网络 ACL 的子网的关联

请勿手动更改子网与 Firewall Manager 管理的任何网络 ACL 之间的关联。这样做可能会禁用 Firewall Manager 管理这些子网的保护功能。您可以通过查找的FMManaged标签设置来识别由 Firewall Manager 管理的网络 ACL。true

要从 Firewall Manager 策略管理中移除子网,请使用 Firewall Manager 策略范围设置来排除该子网。例如,您可以标记子网,然后将该标签排除在策略范围之外。有关更多信息,请参阅 Amazon Firewall Manager 政策范围

更新托管网络 ACL 时,请勿修改由 Firewall Manager 管理的规则

在由 Firewall Manager 管理的网络 ACL 中,遵循中描述的编号方案,将您的自定义规则与策略规则分开。Firewall Manager 网络 ACL 规则和标记仅添加或修改数字介于 5,000 到 32,000 之间的规则。

避免为账户限额添加太多规则

在修复网络 ACL 期间,Firewall Manager 通常会临时增加网络 ACL 规则数量。为避免出现不合规问题,请确保有足够的空间容纳正在使用的规则。有关更多信息,请参阅 Firewall Manager 如何修复不合规的托管网络 ACL

首先禁用自动修正

从禁用自动修复开始,然后查看策略详细信息以确定自动修复会产生的影响。在您确定进行了所需的更改时,请编辑策略以启用自动修正。

Firewall Manager 网络 ACL 策略注意事项

本节列出了使用 Firewall Manager 网络 ACL 策略的注意事项和限制。

  • 更新时间比其他策略慢 — 由于 Amazon EC2 网络 ACL API 处理请求的速度有限,Firewall Manager 应用网络 ACL 策略和策略更改的速度通常比其他防火墙管理器策略要慢。您可能会注意到,与其他 Firewall Manager 策略的类似更改相比,策略更改所需的时间更长,尤其是在您首次添加策略时。

  • 对于初始子网保护,Firewall Manager 首选较旧的策略 — 这仅适用于尚未受到 Firewall Manager 网络 ACL 策略保护的子网。如果一个子网同时属于多个网络 ACL 策略的范围,则 Firewall Manager 会使用最旧的策略来保护该子网。

  • 策略停止保护子网的原因 — 管理子网网络 ACL 的策略会保留管理,直到出现以下情况之一:

    • 子网超出了策略的范围。

    • 该策略已删除。

    • 您可以手动更改子网与由其他 Firewall Manager 策略管理且子网在其范围内的网络 ACL 的关联。

删除 Firewall Manager 网络 ACL 策略

当您删除 Firewall Manager 网络 ACL 策略时,Firewall Manager 会将其为该策略管理的所有网络 ACL false 上的FMManaged标签值更改为。

此外,您可以选择是否清理策略创建的资源。如果您选择清理,Firewall Manager 将按顺序尝试以下步骤:

  1. 将关联恢复到原始状态 — F irewall Manager 会尝试将子网关联回在 Firewall Manager 开始管理之前与之关联的网络 ACL。

  2. 从网络 ACL 中移除第一条和最后一条规则-如果它无法更改关联,Firewall Manager 会尝试删除策略的第一条和最后一条规则,只保留与子网关联的网络 ACL 中的自定义规则。

  3. 不@@ 对规则或关联执行任何操作 — 如果它无法执行上述任一操作,Firewall Manager 将保持网络 ACL 及其关联不变。

如果您不选择清理选项,则需要在删除策略后手动管理每个网络 ACL。在大多数情况下,选择清理选项是最简单的方法。