安全组策略 - Amazon WAF、Amazon Firewall Manager 和 Amazon Shield Advanced
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

安全组策略

您可以使用Amazon Firewall Manager安全组策略来管理您的组织的Amazon Virtual Private Cloud 安全组Amazon Organizations。您可以将集中控制的安全组策略应用于整个组织或部分账户和资源。您还可以通过审核和使用安全组策略来监控和管理组织中正在使用的安全组策略。

Firewall Manager 会持续维护您的策略,并在整个组织中添加或更新帐户和资源时将其应用于这些帐户和资源。有关的信息Amazon Organizations,请参阅《Amazon Organizations用户指南》。有关 Amazon Virtual Private Cloud Virtual VPC 安全组的信息,请参阅《Amazon VPC 用户指南》中的 VPC 的安全组。

您可以使用 Firewall Manager 安全组策略在整个Amazon组织中执行以下操作:

  • 将通用安全组应用到指定的账户和资源。

  • 审计安全组规则,以查找和修正不合规的规则。

  • 审计安全组的使用情况,以清理未使用的和冗余的安全组。

本节介绍Firewall Manager 安全组策略的工作原理,并提供使用指南。有关创建安全组策略的过程,请参阅创建 Amazon Firewall Manager 策略

通用安全组策略

Firewall Manager 通过通用安全组策略在组织中提供集中控制的安全组与账户和资源的关联。您可以指定在企业中应用策略的位置和方式。

您可以将常见的安全组策略应用于以下资源类型:

  • Amazon Elastic Compute Cloud (Amazon EC2)

  • 弹性网络接口

  • Application Load Balancer

  • 经典负载均衡器

有关使用控制台创建通用安全组策略的指南,请参阅创建通用安全组策略

共享 VPC

在通用安全组策略的策略范围设置中,可以选择包括共享 VPC。此选项包括由另一个账户拥有并与范围内账户共享的 VPC。始终包括范围内账户拥有的 VPC。有关共享 VPC 的信息,请参阅 Amazon VPC 用户指南中的使用共享 VPC。

以下注意事项适用于包含共享 VPC。这些是关于安全组策略的一般注意事项的补充安全组策略限制

  • Firewall Manager 将主安全组复制到每个作用域内账户的 VPC 中。对于共享 VPC,Firewall Manager 会为与之共享 VPC 的每个作用域内账户复制一次主安全组。这可能会导致单个共享 VPC 中存在多个副本。

  • 创建新的共享 VPC 时,在Firewall Manager 安全组策略详细信息中不会看到该共享 VPC,直到您在 VPC 中创建了至少一个策略范围内的资源。

  • 当您在启用了共享 VPC 的策略中禁用共享 VPC 时,在共享 VPC 中,Firewall Manager 会删除与任何资源均不关联的副本安全组。Firewall Manager 将剩余的副本安全组保留在原处,但停止对其进行管理。删除这些其余的安全组时,需要在每个共享 VPC 实例中执行手动管理。

主要安全组

对于每种常见安全组策略,您Amazon Firewall Manager提供一个或多个主要安全组:

  • 主要安全组必须由Firewall Manager 管理员账户创建,并且可以位于该账户中的任何 Amazon VPC 实例中。

  • 您可以通过 Amazon Virtual VPC (Amazon VPC) 或Amazon Elastic Cloud (Amazon EC2) 管理主要安全组。有关信息,请参阅 Amazon VPC 用户指南中的与安全组合作

  • 您可以将一个或多个安全组命名为 Firewall Manager 安全组策略的主安全组。默认情况下,策略中允许的安全组数量为一,但您可以提交增加安全组的请求。有关信息,请参阅 Amazon Firewall Manager 配额

策略规则设置

您可以为常用安全组策略的安全组和资源选择以下一种或多种变更控制行为:

  • 识别并报告本地用户对副本安全组所做的任何更改。

  • 取消任何其他安全组与策略范围内的Amazon资源的关联。

  • 将标签从主组分配到副本安全组。

    重要

    Firewall Manager 不会将通过Amazon服务添加的系统标签分发到副本安全组中。系统标签以 aws: 为前缀。此外,如果策略的标签与组织的标签策略冲突,Firewall Manager 不会更新现有安全组的标签或创建新的安全组。有关标签策略的信息,请参阅Amazon Organizations用户指南中的标签策略

策略创建和管理

当您创建通用安全组策略时,Firewall Manager 会将主要安全组复制到策略范围内的每个 Amazon VPC 实例,并将复制的安全组与策略范围内的账户和资源关联起来。修改主安全组时,Firewall Manager 会将更改传播到副本。

删除常见安全组策略时,您可以选择是否清理该策略创建的资源。对于Firewall Manager 常见安全组,这些资源是副本安全组。除非您想在删除策略后手动管理每个副本,否则请选择清理选项。在大多数情况下,选择清理选项是最简单的方法。

如何管理副本

Amazon VPC 实例中的副本安全组像其他 Amazon VPC 安全组一样进行管理。有关信息,请参阅《Amazon VPC 用户指南》中的 VPC 的安全组

内容审核安全组策略

使用Amazon Firewall Manager内容审核安全组策略来检查和管理组织的安全组中使用的规则。根据您在策略中定义的范围,内容审计安全组策略适用于Amazon组织中使用的所有客户创建的安全组。

有关使用控制台创建内容审计安全组策略的指导,请参阅创建内容审核安全组策略

策略范围资源类型

您可以将内容审计安全组策略应用于以下资源类型:

  • Amazon Elastic Compute Cloud (Amazon EC2)

  • 弹性网络接口

  • Amazon VPC 安全组

如果安全组明确位于策略范围内,或者与范围内的资源相关联,则将其视为策略的范围。

策略规则选项

您可以对每个内容审计策略使用托管策略规则或自定义策略规则,但不能同时使用两者。

  • 托管策略规则-在具有托管规则的策略中,您可以使用应用程序和协议列表来指定策略允许的内容和拒绝的内容。您可以使用由Firewall Manager 管理的列表。您也可以创建和使用自己的应用程序和协议列表。有关这些类型的列表以及您的自定义列表管理选项的信息,请参阅托管列表

  • 自定义策略规则-在具有自定义策略规则的策略中,您可以指定现有安全组作为策略的审计安全组。您可以使用审计安全组规则作为模板来定义策略允许或拒绝的规则。

审计安全组

必须先使用您的 Firewall Manager 管理员帐户创建审计安全组,然后才能在策略中使用它们。您可以通过 Amazon VPC(Amazon VPC)或Amazon Elastic Compute Cloud (Amazon EC2) 管理安全组。有关信息,请参阅 Amazon VPC 用户指南中的与安全组合作

Firewall Manager 仅将您用于内容审计安全组策略的安全组用作策略范围内的安全组的比较参考。Firewall Manager 不会将其与组织中的任何资源相关联。

您在审计安全组中定义规则的方式取决于您在策略规则设置中的选择:

  • 托管策略规则-对于托管策略规则设置,您可以使用审计安全组来覆盖策略中的其他设置,明确允许或拒绝否则可能会产生其他合规性结果的规则。

    • 如果您选择始终允许在审计安全组中定义的规则,则无论其他策略设置如何,任何与审计安全组中定义的规则相匹配的规则都被视为符合该策略。

    • 如果您选择始终拒绝在审计安全组中定义的规则,则无论其他策略设置如何,任何与审计安全组中定义的规则相匹配的规则都被视为不符合该策略。

  • 自定义策略规则-对于自定义策略规则设置,审计安全组提供范围内的安全组规则中可接受或不可接受的示例:

    • 如果您选择允许使用规则,所有范围内安全组规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则规则 在这种情况下,策略的安全组规则提供了可接受的操作的示例。

    • 如果您选择拒绝使用规则,则所有范围内的安全组只能拥有不在策略审计安全组规则允许范围内的规则。在这种情况下,策略的安全组举例说明了不可接受的操作。

策略创建和管理

创建审计安全组策略时,必须禁用自动修复。建议的做法是在启用自动补救之前查看策略创建的影响。查看预期效果后,您可以编辑策略并启用自动修复。启用自动修复后,Firewall Manager 会更新或删除范围内的安全组中不合规的规则。

受审计安全组策略影响的安全组

您组织中由客户创建的所有安全组都有资格进入审计安全组策略的范围。

副本安全组不是客户创建的,因此没有资格直接进入审计安全组策略的范围。但是,由于策略的自动补救活动,可以对其进行更新。常见安全组策略的主安全组是客户创建的,可以在审计安全组策略的范围内。如果审计安全组策略对主要安全组进行了更改,Firewall Manager 会自动将这些更改传播到副本。

使用情况审核安全组策略

使用Amazon Firewall Manager使用情况审计安全组策略监控组织中是否存在未使用和冗余的安全组,并可选择执行清理。启用此策略的自动修复时,Firewall Manager 执行以下事项,Firewall Manag

  1. 合并冗余安全组(如果选择了该选项)。

  2. 删除未使用的安全组(如果选择了该选项)。

您可以将使用情况审计安全组策略应用于以下资源类型:

  • Amazon VPC 安全组

有关使用控制台创建使用情况审计安全组策略的指南,请参阅创建使用情况审核安全组策略

Firewall Manager 如何修复冗余安全组

要将安全组视为冗余,它们必须设置完全相同的规则并且位于相同的 Amazon VPC 实例中。要修复冗余安全组集,Firewall Manager 选择该集合中要保留的安全组之一,然后将其关联到与该集合中其他安全组关联的所有资源。然后,Firewall Manager 将其他安全组与其关联的资源断开关联,从而使它们处于未使用状态。

注意

如果您还选择删除未使用的安全组,则Firewall Manager 接下来会执行此操作。这可能导致删除冗余集合中的安全组。

Firewall Manager 如何修复未使用的安全组

要使安全组被视为未使用,任何资源都必须在策略规则指定的最小分钟数内未使用这些安全组。默认情况下,此数字为零。您可以指定多达 525,600 分钟(365 天),以便自己有时间将新的安全组与资源关联起来。Firewall Manager 会根据您的规则设置将未使用的安全组从您的账户中删除,从而对其进行修复。

默认账户规范

当您通过控制台创建使用情况审计安全组策略时,Firewall Manager 会自动选择排除指定帐户并包括所有其他帐户。然后,该服务将Firewall Manager 管理员帐户放入要排除的列表中。这是推荐的方法,允许您手动管理属于 Firewall Manager 管理员帐户的安全组。

安全组策略的最佳实践

本节列出了使用管理安全组的建议Amazon Firewall Manager。

排除Firewall Manager 管理员帐户

设置策略范围时,排除Firewall Manager 管理员帐户。当您通过控制台创建使用情况审计安全组策略时,这是默认选项。

从禁用自动修复开始

对于内容或使用情况审计安全组策略,请先禁用自动修复。查看策略详细信息以确定自动补救将产生的影响。在您确定进行了所需的更改时,请编辑策略以启用自动修复。

如果您还使用外部资源来管理安全组,则可以避免冲突

如果您使用Firewall Manager 以外的工具或服务来管理安全组,请注意避免Firewall Manager 中的设置与外部源中的设置发生冲突。如果您使用自动修复而您的设置发生冲突,则可能会创建一个冲突补救循环,从而消耗双方的资源。

例如,假设您配置了另一项服务来维护一组Amazon资源的安全组,并且配置了 Firewall Manager 策略来为部分或全部相同资源维护不同的安全组。如果您将任一端配置为禁止任何其他安全组与作用域内的资源相关联,则该端将删除另一方维护的安全组关联。如果双方都以这种方式配置,则最终可能会出现相互冲突的解除关联和关联的循环。

此外,假设您创建了 Firewall Manager 审计策略来强制执行与其他服务的安全组配置冲突的安全组配置。Firewall Manager 审计策略应用的补救措施可以更新或删除该安全组,使其与其他服务不兼容。如果将其他服务配置为监视和自动修复发现的任何问题,它将重新创建或更新安全组,使其再次不符合Firewall Manager 审计策略。如果将 Firewall Manager 审计策略配置为自动修复,它将再次更新或删除外部安全组,依此类推。

为避免此类冲突,请在Firewall Manager 任何外部来源之间创建相互排斥的配置。

您可以使用标记将外部安全组排除在Firewall Manager 策略的自动修复范围之外。为此,请向外部源管理的安全组或其他资源添加一个或多个标签。然后,当您定义 Firewall Manager 策略范围时,在资源规范中排除带有您添加的一个或多个标签的资源。

同样,在您的外部工具或服务中,将 Firewall Manager 管理的安全组排除在任何管理或审计活动之外。要么不要导入Firewall Manager 资源,要么使用Firewall Manager 特定的标记将其排除在外部管理之外。

安全组策略限制

本节列出了使用Amazon Firewall Manager安全组策略的限制:

  • 不支持更新使用 Fargate 服务类型创建的 Amazon EC2 弹性网络接口的安全组。但是,您可以使用 Amazon EC2 服务类型更新 Amazon ECS 弹性网络接口的安全组。

  • Firewall Manager 不支持由Amazon Relational Database Service 创建的 Amazon EC2 弹性网络接口的安全组。

  • 更新Amazon ECS 弹性网络接口只能用于使用滚动更新 (Amazon ECS) 部署控制器的 Amazon ECS 服务。对于其他 Amazon ECS 部署控制器,例如 CODE_DEPLOY 或外部控制器,Firewall Manager 目前无法更新弹性网络接口。

  • 使用 Amazon EC2 弹性网络接口的安全组,Firewall Manager 无法立即看到对安全组的更改。Firewall Manager 通常会在几个小时内检测到更改,但检测可能会延迟多达六个小时。

  • Firewall Manager 不支持更新网络负载均衡器的弹性网络接口中的安全组。

  • Firewall Manager 不支持常见安全组策略中的安全组引用。

安全组策略使用案例

您可以使用Amazon Firewall Manager常见的安全组策略自动配置主机防火墙,以实现 Amazon VPC 实例之间的通信。本节列出了标准的 Amazon VPC 架构,并描述了如何使用Firewall Manager 常见安全组策略保护每个架构。这些安全组策略可以帮助您应用一组统一的规则来选择不同账户中的资源,并避免在 Amazon Elastic Compute Cloud 和 Amazon VPC 中按账户进行配置。

使用 Firewall Manager 常见安全组策略,您可以仅标记与其他 Amazon VPC 中的实例通信所需的 EC2 弹性网络接口。这样,同一 Amazon VPC 中的其他实例就会变得更加安全和隔离。

用例:监视和控制对应用程序负载均衡器和经典负载均衡器的请求

您可以使用 Firewall Manager 的通用安全组策略来定义您的作用域内负载均衡器应处理哪些请求。您可以通过Firewall Manager 控制台进行配置。只有符合安全组入站规则的请求才能到达您的负载均衡器,负载均衡器只会分发符合出站规则的请求。

用例:可访问互联网的公共 Amazon VPC

您可以使用Firewall Manager 通用安全组策略来保护公有 Amazon VPC,例如,仅允许入站端口 443。这与仅允许公共 VPC 的入站 HTTPS 流量相同。您可以标记 VPC 中的公共资源(例如,“publicVPC”),然后将Firewall Manager 策略范围设置为仅带有该标签的资源。Firewall Manager 自动将策略应用于这些资源。

用例:公有和私有 Amazon VPC 实例

您可以对公共资源使用相同的通用安全组策略,如先前用例中针对可访问互联网的公用 Amazon VPC 实例所建议的那样。您可以使用第二个通用安全组策略来限制公共资源和私有资源之间的通信。使用类似 “PublicPrivate” 的内容标记公有和私有 Amazon VPC 实例中的资源,以将第二个策略应用于它们。您可以使用第三个策略来定义私有资源与其他公司或私有 Amazon VPC 实例之间允许的通信。对于此策略,您可以在私有资源上使用其他识别标签。

用例:中心和分支 Amazon VPC 实例

您可以使用通用安全组策略来定义中心 Amazon VPC 实例和分支 Amazon VPC 实例之间的通信。您可以使用第二个策略来定义从每个分支 Amazon VPC 实例到中心 Amazon VPC 实例的通信。

用例:Amazon EC2 实例的默认网络接口

您可以使用通用安全组策略仅允许标准通信,例如内部 SSH 和 Patch/OS 更新服务,并禁止其他不安全的通信。

用例:识别具有开放权限的资源

您可以使用审计安全组策略来识别组织内有权与公共 IP 地址通信或拥有属于第三方供应商的 IP 地址的所有资源。