基础设施 OU – 网络账户 - AWS 规范性指导

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

基础设施 OU – 网络账户

通过进行简短的调查来影响 AWS 安全参考架构 (AWS SRA) 的未来。

下图说明了在网络账户中配置的 AWS 安全服务。 

网络账户的安全服务

网络账户可管理应用程序与广泛的互联网之间的网关。保护这一双向接口十分重要。网络账户可将网络服务、配置和操作与各个应用程序工作负载、安全性及其他基础设施隔离开来。此方案不仅可限制连接、权限和数据流,而且还能为需要在这些账户中进行操作的团队分离职责和提供最低权限。通过将网络流拆分为单独的入站和出站虚拟私有云(VPC),可以保护敏感基础设施和流量免受意外访问。一般认为入站网络风险较高,因而需要适当的路由、监控和潜在问题缓解措施。这些基础设施账户将继承组织管理账户和基础设施 OU 中的权限防护机制。网络(和安全)团队将管理此账户中的大部分基础设施。

网络架构

尽管网络设计和细节超出了本文档的范围,但我们建议使用以下三个选项来实现不同账户之间的网络连接:VPC 对等互连、AWS 和 AWS Transit G PrivateLink ateway。在这三个选项中进行选择时的重要考虑因素包括操作规范、预算以及具体带宽需求。 

  • VPC 对等:连接两个 VPC 的最简单方法是使用 VPC 对等。此连接可在 VPC 之间实现完全双向连接。位于不同账户和 AWS 区域中的 VPC 也可以相互对等。如果有数十到数百个 VPC,将其大规模对等互连会产生一个具有成百数千个对等连接的网格,而这可能难以管理和扩展。如果一个 VPC 中的资源必须与另一个 VPC 中的资源通信,要控制和保护两个 VPC 的环境,且要连接的 VPC 数量少于 10 个(以便对每个连接进行单独管理)时,最好使用 VPC 对等。

  • AW PrivateLink S-在 VPC、服务和应用程序之间 PrivateLink提供私有连接。您可以在 VPC 中创建自己的应用程序,并将其配置为 PrivateLink由支持的服务(称为终端节点服务)。其他 AWS 主体可以通过使用接口 VPC 端点网关负载均衡器端点(具体取决于服务类型),在其 VPC 和您的端点服务之间创建连接。使用时 PrivateLink,服务流量不会通过可公开路由的网络。 PrivateLink 在您的客户端-服务器设置中,要向一个或多个使用者 VPC 提供对服务提供商 VPC 中特定服务或一组实例的单向访问权限,请使用此选项。当两个 VPC 中的客户端和服务器的 IP 地址重叠时,这也是一个不错的选择,因为在客户端 VPC 中 PrivateLink 使用弹性网络接口,因此不会与服务提供商发生 IP 冲突。 

  • AWS Tran sit Gateway − Transit Gateway 提供了一种 hub-and-spoke 设计,用于将 VPC 和本地网络作为一项完全托管的服务进行连接,而无需您配置虚拟设备。AWS 可管理高可用性和可扩展性。中转网关是一种区域资源,可以连接同一 AWS 区域内的数千个 VPC。您可以将您的混合连接(VPN 和 AWS Direct Connect 连接)附加到单个中转网关中,从而将您的 AWS 组织的整个路由配置整合到一个位置并对其进行控制。中转网关解决了大规模创建和管理多个 VPC 对等连接所带来的复杂性。它是大多数网络架构的默认设置,但如果在成本、带宽和延迟方面有特定的需求,则 VPC 对等可能更适合您。

入站(入口)VPC

入站 VPC 旨在接受、检查和路由应用程序外部发起的网络连接。根据应用程序的具体情况,您可能会在此 VPC 中看到一些网络地址转换(NAT)。来自此 VPC 的流日志将被捕获并存储在日志存档账户中。

出站(出口)VPC

出站 VPC 旨在处理应用程序内部发起的网络连接。根据应用程序的具体情况,您可能会在此 VPC 中看到流量 NAT、AWS 服务专用的 VPC 端点以及外部 API 端点托管。来自此 VPC 的流日志将被捕获并存储在日志存档账户中。

检查 VPC

专用检查 VPC 可简化对 VPC(同一 AWS 区域内或不同 AWS 区域内)、互联网和本地网络之间的检查的管理,并可集中进行此项管理。对于 AWS SRA,请确保 VPC 之间的所有流量均经由检查 VPC,并避免对任何其他工作负载使用检查 VPC。

AWS Network Firewall

AWS Network Firewall 是一种适用于您的 VPC 的高可用托管网络防火墙服务。它可以帮助您轻松部署和管理有状态检查、入侵防御和检测以及 Web 筛选,从而保护您在 AWS 上的虚拟网络。您可以使用 Network Firewall 来解密 TLS 会话并检查入站和出站流量。有关配置 Network Firewall 的更多信息,请参阅 AWS Network Firewall – New Managed Firewall Service in VPC 博客文章。

您可以在 VPC 中按可用区使用防火墙。对于每个可用区,您可以选择一个子网来托管筛选流量的防火墙端点。一个可用区中的防火墙端点可以保护该区内除其所在子网外的所有其他子网。根据应用场景和部署模型,防火墙子网可能是公有子网,也可能是私有子网。防火墙对流量完全透明,并且不执行网络地址转换(NAT)。它会保留源地址和目标地址。在此参考架构中,防火墙端点托管在检查 VPC 中。从入站 VPC 流向出站 VPC 的所有流量都将经由此防火墙子网进行路由,以便进行检查。 

Network Firewall 通过亚马逊 CloudWatch指标实时显示防火墙活动,并通过向亚马逊简单存储服务 (Amazon S3) 和 Amazon D CloudWatch ata Firehose 发送日志来提高网络流量的可见性。Network Firewall 可与现有安全方法进行互操作,包括 AWS 合作伙伴提供的技术。您还可以导入现有的 Suricata 规则集,这些规则集可以是内部编写的,也可以是从第三方供应商或开源平台外部获取而来。 

在 AWS SRA 中,在网络账户内使用 Network Firewall,因为该服务以网络控制为重点的功能与账户意图一致。 

设计注意事项
  • AWS Firewall Manager 支持 Network Firewall,因此您可以在整个组织中集中配置和部署 Network Firewall 规则。(有关详细信息,请参阅 AWS 文档中的 AWS Network Firewall policies。) 配置 Firewall Manager 时,它会自动创建防火墙,其中包含您指定的账户和 VPC 中的一组规则。它还会在包含公有子网的每个可用区的专用子网中部署端点。同时,对集中配置的规则集所做的任何更改都会自动在已部署的 Network Firewall 防火墙的下游更新。 

  • Network Firewall 有多种部署模型可供选择。模型是否合适取决于您的应用场景和要求。示例包括:

    • 分布式部署模型,其中将 Network Firewall 部署到单个 VPC 中。

    • 集中式部署模型,其中将 Network Firewall 部署到集中式 VPC 中,用于东-西(VPC 到 VPC)流量或南-北(互联网出口和入口、本地)流量。

    • 组合式部署模型,其中将 Network Firewall 部署到集中式 VPC 中,用于东-西流量和部分南-北流量。

  • 作为最佳实践,请勿使用 Network Firewall 子网部署任何其他服务。这是因为 Network Firewall 无法检查来自防火墙子网内源或目标的流量。

网络访问分析器

网络访问分析器是 Amazon VPC 的一项功能,可识别对资源的意外网络访问。您可以使用网络访问分析器来验证网络分段、识别可从互联网访问或只能从可信 IP 地址范围访问的资源,并验证是否所有网络路径上都存在适当的网络控制。

网络访问分析器使用自动推理算法来分析数据包可以在 AWS 网络中的资源之间采用的网络路径,并生成与您定义的网络访问范围相匹配的路径的调查发现。网络访问分析器对网络配置执行静态分析,这意味着在此分析过程中,不会在网络中传输任何数据包。

Amazon Inspector 网络可到达性规则提供了相关功能。这些规则生成的调查发现将在应用程序账户中使用。网络访问分析器和网络可到达性均采用 AWS Provable Security 计划的最新技术,并将此技术应用于不同的重点领域。网络可到达性包专门用于 EC2 实例及其互联网可访问性。 

网络账户定义了控制进出 AWS 环境的流量的关键网络基础设施。这些流量需要加以严格监控。在 AWS SRA 中,在网络账户中使用网络访问分析器,有助于识别意外网络访问、通过互联网网关访问互联网的资源,并验证资源和互联网网关之间的所有网络路径上是否存在适当的网络控制,例如网络防火墙和 NAT 网关。 

设计注意事项
  • 网络访问分析器是 Amazon VPC 的一项功能,可在任何拥有 VPC 的 AWS 账户中使用。网络管理员可以获得具有限定适用范围的跨账户 IAM 角色,以验证每个 AWS 账户中是否强制使用经批准的网络路径。

AWS RAM

AWS Resource Access Manager(AWS RAM)可帮助您与其他 AWS 账户安全地共享您在一个 AWS 账户中创建的 AWS 资源。AWS RAM 提供了一个集中的地方来管理资源共享,并跨账户标准化这一体验。这样可以在利用管理和计费隔离的同时更轻松地管理资源,并缩小多账户策略造成的影响控制优势的范围。如果您的账户由 AWS Organizations 管理,AWS RAM 可让您与组织中的所有账户共享资源,或者仅与一个或多个指定组织单位(OU)内的账户共享资源。您还可以根据账户 ID 与特定 AWS 账户共享,无论该账户是否属于组织。您还可以与指定的 IAM 角色和用户共享某些支持的资源类型

借助 AWS RAM,您可以共享不支持基于 IAM 资源的策略的资源,例如 VPC 子网和 Route 53 规则。此外,借助 AWS RAM,资源所有者可以查看哪些主体有权访问其共享的每个资源。IAM 实体可以直接检索与其共享的资源列表,但他们无法对通过 IAM 资源策略共享的资源执行此操作。如果将 AWS RAM 用于共享 AWS 组织外部的资源,则会启动邀请流程。接收者必须先接受邀请,然后才能获得对资源的访问权限。这提供了额外的制衡措施。

AWS RAM 由资源所有者在部署共享资源的账户中调用和管理。AWS SRA 中说明的一个 AWS RAM 常见应用场景是,网络管理员与整个 AWS 组织共享 VPC 子网和中转网关。这使得 AWS 账户与网络管理功能解耦,并有助于实现职责分离。有关 VPC 共享的更多信息,请参阅 AWS Blog 文章 VPC sharing: A new approach to multiple accounts and VPC managementAWS network infrastructure whitepaper。 

设计注意事项
  • 尽管 AWS RAM 即服务仅部署在 AWS SRA 中的网络账户内,但它通常会部署在多个账户中。例如,您可以将数据湖管理集中到单个数据湖账户,然后与 AWS 组织中的其他账户共享 AWS Lake Formation 数据目录资源(数据库和表)。有关更多信息,请参阅 AWS Lake Formation 文档和 AWS Blog 文章 Securely share your data across AWS accounts using AWS Lake Formation。此外,安全管理员在构建 AWS 私有 CA 层次结构时可以使用 AWS RAM 来遵循最佳实践。CA 可与外部第三方共享,而外部第三方无需访问 CA 层次结构即可颁发证书。这将允许发起组织限制和撤销第三方访问。

AWS Verified Access

AWS Verified Access 可提供对企业应用程序的安全访问,无需 VPN 连接。它根据预定义的要求实时评估每个访问请求,从而改善安全状况。您可以根据身份数据设备状态,为每个应用程序定义唯一的访问策略。Verified Access 还可以帮助管理员高效地设置和监控访问策略,从而简化安全操作。这有助于腾出时间来更新政策、响应安全和连接事件以及审核合规性标准。Verified Access 还支持与 AWS WAF 的集成,以帮助您筛选出 SQL 注入和跨站脚本攻击(XSS)等常见威胁。Verified Access 与 AWS IAM 身份中心无缝集成,允许用户使用基于 SAML 的第三方身份提供商进行身份验证 () IdPs。如果您已拥有与 OpenID Connect(OIDC)兼容的自定义 IdP 解决方案,则 Verified Access 还可通过直接与 IdP 连接来对用户进行身份验证。Verified Access 会记录每次访问尝试,以便您可以快速响应安全事件及审核请求。Verified Access 支持将这些日志传送到亚马逊简单存储服务 (Amazon S3)、亚马逊日志和 CloudWatch 亚马逊数据 Firehose。

Verified Access 支持两种常见的企业应用程序模式:内部应用程序模式和面向互联网的应用程序模式。Verified Access 使用应用程序负载均衡器或弹性网络接口与应用程序集成。如果您使用的是应用程序负载均衡器,则 Verified Access 需要内部负载均衡器。Verified Access 支持实例级别的 AWS WAF,因此将 AWS WAF 与应用程序负载均衡器集成的现有应用程序可将策略从负载均衡器移至 Verified Access 实例。企业应用程序表示为 Verified Access 端点。每个端点都与一个 Verified Access 组相关联,并继承该组的访问策略。Verified Access 组是 Verified Access 端点和组级别 Verified Access 策略的集合。组简化了策略管理,让 IT 管理员可以设置基准标准。应用程序所有者可以根据应用程序的敏感度进一步定义精细的策略。

在 AWS SRA 中,Verified Access 托管在网络账户中。中心 IT 团队设置集中管理的配置。例如,他们可能会连接身份提供者(例如 Okta)和设备信任提供商(例如 Jamf)等信任提供商,创建组并确定组级别策略。然后使用 AWS Resource Access Manager(AWS RAM),与数十个、数百个或数千个工作负载账户共享这些配置。这让应用程序团队能够管理用于管理其应用程序的底层端点,而无需产生其他团队的开销。AWS RAM 为托管在不同工作负载账户中的企业应用程序提供了一种利用 Verified Access 的可扩展方式。

设计注意事项
  • 您可以对具有类似安全要求的应用程序的端点进行分组,以简化策略管理,然后与应用程序账户共享该组。该组中的所有应用程序均共享组策略。如果组中某个应用程序因边缘情况需要特定策略,您可以为该应用程序应用应用程序级别的策略。

Amazon VPC Lattice

Amazon VPC Lattice 是一项用于连接、监控和保护 service-to-service通信的应用程序联网服务。服务,通常称为微服务,是一种可独立部署的软件单元,用于提供特定的任务。VPC Lattice 可自动管理跨 VPC 和 AWS 账户的服务之间的网络连接和应用程序层路由,无需您管理底层网络连接、前端负载均衡器或 sidecar 代理。它提供了完全托管的应用程序层代理,可根据路径和标头等请求特征提供应用程序级别的路由。VPC Lattice 内置于 VPC 基础设施中,因此可为各种计算类型 [例如 Amazon Elastic Compute Cloud(Amazon EC2)、Amazon Elastic Kubernetes Service(Amazon EKS)和 AWS Lambda] 提供一致的方法。VPC Lattice 还支持蓝/绿和金丝雀式部署的加权路由。您可以使用 VPC Lattice 创建具有逻辑边界的服务网络,该网络可自动实现服务发现和连接。VPC Lattice 与 AWS Identity and Access Management (IAM) 集成,可使用 service-to-service 身份验证策略进行身份验证和授权。

VPC Lattice 与 AWS Resource Access Manager(AWS RAM)集成,可实现服务和服务网络的共享。AWS SRA 描述了一种分布式架构,其中,开发人员或服务所有者可在其应用程序账户中创建 VPC Lattice 服务。服务所有者可定义侦听器、路由规则和目标组以及身份验证策略。然后,他们可与其他账户共享服务,并将这些服务与 VPC Lattice 服务网络关联。这些网络由网络管理员在网络账户中创建,并与应用程序账户共享。网络管理员配置服务网络级别的身份验证策略和监控。管理员将 VPC 和 VPC Lattice 服务与一个或多个服务网络关联。有关此分布式架构的详细演练,请参阅 AWS Blog 文章 Build secure multi-account multi-VPC connectivity for your applications with Amazon VPC Lattice

设计注意事项
  • 根据组织的服务运营模式或服务网络可见性,网络管理员可以共享其服务网络,并为服务所有者提供控制权,以将其服务和 VPC 与这些服务网络关联。或者,服务所有者可以共享其服务,并且网络管理员可以将服务与服务网络关联。

    仅当客户端位于与同一服务网络关联的 VPC 中时,客户端才可以向与该服务网络关联的服务发送请求。遍历 VPC 对等连接或中转网关的客户端流量会被拒绝。

边缘安全

边缘安全通常需要三种类型的保护:安全的内容分发、网络和应用程序层保护以及分布式拒绝服务(DDoS)缓解。数据、视频、应用程序和 API 等内容必须使用推荐版本的 TLS 来加密端点之间的通信,从而快速、安全地分发。此外,内容还应通过签名 URL、签名 Cookie 和令牌身份验证进行访问限制。应用程序级别安全性应设计为控制机器人流量,阻止 SQL 注入或跨站脚本攻击(XSS)等常见攻击模式,并提供 Web 流量可见性。DDoS 缓解在边缘提供了重要的防御层,可确保任务关键型业务运营和服务持续可用。应保护应用程序和 API 免受 SYN 泛洪、UDP 泛洪或其他反射攻击,并采用内联缓解措施来阻止基本的网络层攻击。

从核心云到 AWS 网络边缘,AWS 提供多项服务来帮助构建安全环境。亚马逊 CloudFront、AWS Certifice Manager (ACM)、AWS Shield、AWS WAF 和亚马逊 Route 53 共同努力,帮助创建灵活的分层安全边界。在 Amazon CloudFront 中,内容、API 或应用程序可以通过 HTTPS 传送,方法是使用 TLSv1.3 来加密和保护查看者客户端与之间的通信。 CloudFront您可以使用 ACM 创建自定义 SSL 证书并将其免费部署到 CloudFront 发行版中。ACM 会自动处理证书续订。AWS Shield 是一项托管式 DDoS 保护服务,有助于保护在 AWS 上运行的应用程序。它提供动态检测和自动内联缓解措施,可最大限度地减少应用程序停机时间和延迟。AWS WAF 让您可以创建规则,根据特定条件(IP 地址、HTTP 标头和正文或自定义 URI)、常见 Web 攻击和普遍存在的机器人来筛选 Web 流量。Route 53 是一种可用性高、可扩展性强的 DNS Web 服务。Route 53 会将用户请求连接到在 AWS 或本地运行的互联网应用程序。AWS SRA 通过使用托管在网络账户中的 AWS Transit Gateway,采用集中式网络入口架构,因而边缘安全基础设施也集中在此账户中。

Amazon CloudFront

Amazon CloudFront 是一个安全的内容分发网络 (CDN),可针对公共网络层和传输 DDoS 尝试提供固有的保护。您可以使用 TLS 证书分发内容、API 或应用程序,并且高级 TLS 功能会自动启用。您可以使用 ACM 创建自定义 TLS 证书,并在查看者和之间强制执行 HTTPS 通信 CloudFront,如后面的 ACM 部分所述。此外,您还可以要求与您的自定义源 CloudFront 之间的通信在传输过程中实现 end-to-end加密。对于这种情况,您必须在原始服务器上安装 TLS 证书。如果源是弹性负载均衡器,则可使用由 ACM 生成的证书或由第三方证书颁发机构(CA)验证并导入到 ACM 中的证书。如果 S3 存储桶网站终端节点用作来源 CloudFront,则无法配置 CloudFront 为在源端节点中使用 HTTPS,因为 Amazon S3 不支持网站终端节点的 HTTPS。(但是,您仍然可以要求在查看者和之间使用 HTTPS CloudFront。) 对于支持安装 HTTPS 证书的所有其他源,您必须使用由可信第三方 CA 签名的证书。

CloudFront 提供了多种选项来保护和限制对您的内容的访问。例如,它可以通过使用签名 URL 和签名 Cookie 来限制对 Amazon S3 源的访问。有关更多信息,请参阅 CloudFront文档中的配置安全访问和限制对内容的访问。

AWS SRA 说明了网络账户中的集中 CloudFront 分配,因为它们与使用 Transit Gateway 实现的集中式网络模式一致。通过在网络账户中部署和管理 CloudFront 分配,您可以从集中控制中受益。您可以在一个地方管理所有 CloudFront 分配,这样可以更轻松地控制访问权限、配置设置和监控所有账户的使用情况。此外,您还可以从一个集中式账户管理 ACM 证书、DNS 记录和 CloudFront日志记录。 CloudFront 安全控制面板可直接在您的 CloudFront 分发中提供 AWS WAF 的可见性和控制。您可以了解应用程序的主要安全趋势、允许和阻止的流量以及机器人活动。您可以使用调查工具(例如可视化日志分析器和内置屏蔽控件)来隔离流量模式并屏蔽流量,无需查询日志或编写安全规则。

设计注意事项
  • 或者,您可以在应用程序帐户中 CloudFront 作为应用程序的一部分进行部署。在这种情况下,应用程序团队会做出决策,例如如何部署 CloudFront 发行版,确定适当的缓存策略,并负责 CloudFront分发的治理、审计和监控。通过在多个账户之间 CloudFront 分配分配,您可以从额外的服务配额中受益。另一个好处是,您可以使用 CloudFront固有的自动源访问身份 (OAI) 和源站访问控制 (OAC) 配置来限制对 Amazon S3 来源的访问。

  • 当您通过诸如的 CDN 交付网页内容时 CloudFront,必须防止观看者绕过 CDN 直接访问您的原始内容。要实现此源访问限制,在将请求转发到自定义源之前,您可以使用 CloudFront 和 AWS WAF 添加自定义标头并验证标头。有关此解决方案的详细说明,请参阅 AWS 安全博客文章如何使用 AWS WAF 和 AWS Secrets Manager 增强亚马逊 CloudFront 源站的安全。另一种方法是仅限制与 Application Load Balancer 关联的安全组中的 CloudFront 前缀列表。这将有助于确保只有 CloudFront 分配才能访问负载均衡器。

AWS WAF

AWS WAF 是一款 Web 应用程序防火墙,有助于保护 Web 应用程序免受 Web 漏洞攻击,例如可能影响应用程序可用性、损害安全性或消耗过多资源的常见漏洞和机器人。它可以与亚马逊 CloudFront 发行版、Amazon API Gateway REST API、应用程序负载均衡器、AWS AppSync GraphQL API、Amazon Cognito 用户池和 AWS App Runner 服务集成。

AWS WAF 使用 Web 访问控制列表(ACL)来保护一组 AWS 资源。Web ACL 是一组规则,用于定义检查标准,以及在 Web 请求满足标准时要采取的关联操作(阻止、允许、计数或运行机器人控制功能)。AWS WAF 提供了一组托管规则,可针对常见的应用程序漏洞提供保护。这些规则由 AWS 和 AWS 合作伙伴制定和管理。AWS WAF 还提供用于编写自定义规则的强大规则语言。您可以使用自定义规则来编写符合特定需求的检查标准。示例包括 IP 限制、地理限制,以及更适合特定应用程序行为的托管规则的自定义版本。

AWS WAF 为常见的定向机器人和账户盗用保护(ATP)提供了一组智能层管理规则。如果使用机器人控制功能和 ATP 规则组,需要支付订阅费和流量检查费。因此,我们建议您首先监控流量,然后再决定要使用的对象。您可以使用 AWS WAF 控制台上免费提供的机器人管理和账户盗用控制面板来监控这些活动,然后决定是否需要智能层 AWS WAF 规则组。

在 AWS SRA 中,AWS WAF CloudFront 与网络账户集成。在此配置中,WAF 规则处理在边缘站点进行,而不是 VPC 内。这可以筛选更靠近请求内容的最终用户的恶意流量,并有助于限制恶意流量进入您的核心网络。

通过配置对 S3 存储桶的跨账户存取权限,您可以将完整的 Amazon WAF 日志发送到日志存档账户中的 S3 存储桶。有关更多信息,请参阅有关此主题的 AWS re:Post 文章

设计注意事项
  • 作为在网络账户中集中部署 AWS WAF 的替代方案,在应用程序账户中部署 AWS WAF 可以更好地满足某些应用场景。例如,当您在应用程序账户中部署 CloudFront 分配或拥有面向公众的应用程序负载均衡器时,或者如果您在 Web 应用程序前面使用 Amazon API Gateway,则可以选择此选项。如果您决定在每个应用程序账户中部署 AWS WAF,请使用 AWS Firewall Manager 从集中式安全工具账户管理这些账户中的 AWS WAF 规则。

  • 您还可以在 CloudFront 层添加常规 AWS WAF 规则,并在区域资源(例如应用程序负载均衡器或 API 网关)上添加其他特定于应用程序的 AWS WAF 规则。

AWS Shield

AWS Shield 是一项托管式 DDoS 保护服务,可保护在 AWS 上运行的应用程序。Shield 提供两个等级:Shield Standard 和 Shield Advanced。Shield Standard 为所有 AWS 客户提供针对最常见基础设施(第 3 层和第 4 层)事件的保护,无需额外付费。Shield Advanced 为针对受保护的亚马逊弹性计算云 (Amazon EC2)、Elastic Load Balancing (ELB)、亚马逊、AWS Global Accel CloudFront erator 和 Route 53 托管区域上的应用程序的未经授权的事件提供了更复杂的自动缓解措施。如果您拥有高可见性网站或容易遭受频繁的 DDoS 攻击,可以考虑使用 Shield Advanced 提供的额外功能。

您可以使用 Shield Advanced 自动应用层 DDoS 缓解功能将 Shield Advanced 配置为自动响应,以缓解针对受保护 CloudFront 分布和应用程序负载均衡器的应用层(第 7 层)攻击。启用此功能后,Shield Advanced 会自动生成自定义 AWS WAF 规则来缓解 DDoS 攻击。Shield Advanced 还可让您访问 AWS Shield Response Team(SRT)。您可以随时联系 SRT,创建和管理针对应用程序或在主动 DDoS 攻击期间的自定义缓解措施。如果您希望 SRT 主动监控受保护资源并在企图发起 DDoS 攻击期间与您联系,请考虑启用主动参与功能

设计注意事项
  • 如果应用程序账户中有面向互联网的资源(例如 Ama CloudFront zon、应用程序负载均衡器或网络负载均衡器)前置的工作负载,请在应用程序账户中配置 Shield Advanced 并将这些资源添加到 Shield 保护中。您可以使用 AWS Firewall Manager 对这些选项进行大规模配置。

  • 如果数据流中有多个资源,例如在 Application Load Balancer 前面的 CloudFront 分配,则只能使用入口点资源作为受保护的资源。这样可以确保您不会为两个资源支付两次 Shield 数据传出(DTO)费用

  • Shield Advanced 记录了您可以在亚马逊中监控的指标 CloudWatch。(有关更多信息,请参阅 AWS 文档中的 AWS Shield Advanced 指标和警报。) 设置 CloudWatch 警报,以便在检测到 DDoS 事件时向您的安全中心接收 SNS 通知。如果发生可疑 DDoS 事件,请通过提交支持工单并为工单分配最高优先级来联系 AWS Enterprise Support 团队。处理该事件时,Enterprise Support 团队会涉及 Shield Response Team(SRT)。此外,您可以预配置 AWS Shield 参与 Lambda 函数,以创建支持工单并向 SRT 团队发送电子邮件。

AWS Certificate Manager

AWS Certificate Manager(ACM)让您可以预置、管理和部署公有和私有 TLS 证书,以便与 AWS 服务及内部连接资源结合使用。使用 ACM,您可以快速申请证书,将其部署到集成了 ACM 的 AWS 资源上,例如 Elastic Load Balancing 负载均衡器、 CloudFront 亚马逊分配和 Amazon API Gateway 上的 API,然后让 ACM 处理证书续订。申请 ACM 公有证书时,无需生成密钥对或证书签名请求(CSR),无需向证书颁发机构(CA)提交 CSR,也无需在收到证书后上传并安装该证书。ACM 还提供选项用于导入第三方 CA 颁发的 TLS 证书并通过 ACM 集成服务部署这些证书。当您使用 ACM 管理证书时,使用强大的加密和密钥管理最佳实践,可以安全地保护和存储证书私钥。借助 ACM,预置公有证书无需额外付费,并且 ACM 负责管理续订流程。

ACM 在网络账户中用于生成公共 TLS 证书,而 CloudFront 分发又使用该证书在查看者和 CloudFront之间建立 HTTPS 连接。有关更多信息,请参阅CloudFront 文档

设计注意事项
  • 对于面向外部的证书,ACM 必须与为其预置证书的资源位于同一个账户中。证书无法在账户之间共享。

Amazon Route 53

Amazon Route 53 是一种可用性高、可扩展性强的 DNS Web 服务。您可以使用 Route 53 执行三个主要功能:域注册、DNS 路由和运行状况检查。

您可以使用 Route 53 作为 DNS 服务,将域名映射到您的 EC2 实例、S3 存储桶、 CloudFront 分配和其他 AWS 资源。AWS DNS 服务器的分布式特性有助于确保始终如一地将最终用户路由到您的应用程序。Route 53 流量和路由控制等功能可帮助您提高可靠性。如果主应用程序端点不可用,则可将失效转移配置为将用户重新路由到其他位置。53 Route Resolver 通过 AWS Direct Connect 或 AWS 托管 VPN,为 VPC 和本地网络提供递归 DNS。

通过将 AWS Identity and Access Management(IAM)服务与 Route 53 结合使用,您可以精细控制谁可以更新 DNS 数据。您可以启用 DNS 安全扩展(DNSSEC)签名,让 DNS 解析器验证 DNS 响应是否来自 Route 53 且未被篡改。

Route 53 Resolver DNS Firewall 可为来自您 VPC 的出站 DNS 请求提供保护。这些请求通过 Route 53 Resolver 进行域名解析。DNS Firewall 保护的主要用途是帮助防止数据的 DNS 泄露。使用 DNS Firewall,您可以监控和控制应用程序可以查询的域。您可以拒绝对已知不良域的访问,并允许所有其他查询通过。或者,您可以拒绝对除明确信任的域之外的所有域的访问。您还可以使用 DNS Firewall 阻止在私有托管区(共享或本地)中对 VPC 端点名称等资源的解析请求。此外,它还可以阻止对公有或私有 EC2 实例名称的请求。

默认情况下,Route 53 解析器作为每个 VPC 的一部分创建。在 AWS SRA 中,Route 53 在网络账户中使用,主要用于 DNS 防火墙功能。 

设计注意事项
  • DNS Firewall 和 AWS Network Firewall 都提供域名筛选,但适用于不同类型的流量。您可以将 DNS Firewall 与 Network Firewall 结合使用,以便通过两个不同的网络路径为应用程序层流量配置基于域的筛选。

    • DNS Firewall 为通过 Route 53 Resolver 从 VPC 内的应用程序传递的出站 DNS 查询提供筛选。您还可以将 DNS Firewall 配置为向阻止的域名发送查询的自定义响应。

    • Network Firewall 为网络层和应用程序层流量提供筛选,但无法查看 Route 53 Resolver 所做的查询。