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

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

基础设施 OU – 网络账户

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

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

网络账户的安全服务

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

网络架构

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

  • VPC 对等互连-连接两者的最简单方法 VPCs 是使用 VPC 对等连接。连接可实现两者之间的完全双向连接。 VPCs VPCs 它们位于不同的账户中, AWS 区域 也可以互相监视。从规模上看,当你有数十到数百个对等连接时 VPCs,将它们与对等互连互连会形成一个由数百到数千个对等连接组成的网格,这可能很难管理和扩展。当一个 VPC 中的资源必须与另一个 VPC 中的资源通信,两 VPCs 者的环境都受到控制和保护,并且 VPCs 要连接的数量少于 10(以便对每个连接进行单独管理)时,最好使用 VPC 对等连接。

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

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

入站(入口)VPC

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

出站(出口)VPC

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

检查 VPC

专用的检查 VPC 为管理 VPCs (相同或不同 AWS 区域)、互联网和本地网络之间的检查提供了一种简化的集中方法。对于 AWS SRA,请确保两者之间的所有流量都 VPCs 通过检查 VPC,并避免将检查 VPC 用于任何其他工作负载。

AWS Network Firewall

AWS Network Firewall是一项适用于您的 VPC 的高可用性托管网络防火墙服务。它使您能够毫不费力地部署和管理状态检查、入侵防御和检测以及 Web 过滤,以帮助保护您的虚拟网络。 AWS您可以使用 Network Firewall 来解密 TLS 会话并检查入站和出站流量。有关配置 Network Firewall 的更多信息,请参阅《AWS Network Firewall 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,因此您可以在整个组织中集中配置和部署网络防火墙规则。(有关详细信息,请参阅 AWS 文档中的在 Firewall Manager 中使用 AWS Network Firewall 策略。) 配置 Firewall Manager 时,它会自动创建一个防火墙,其中 VPCs 包含您指定的帐户中的规则集。它还会在包含公有子网的每个可用区的专用子网中部署端点。同时,对集中配置的规则集所做的任何更改都会自动在已部署的 Network Firewall 防火墙的下游更新。

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

    • 一种分布式部署模型,其中将 Network Firewall 部署到个人中 VPCs。

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

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

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

网络访问分析器

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

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

Amazon Inspector 网络可到达性规则提供了相关功能。这些规则生成的调查发现将在应用程序账户中使用。Network Access Analyzer 和 Network Reachability 都使用AWS 可证明安全计划中的最新技术,他们将这项技术应用于不同的关注领域。Network Reachability 软件包特别关注 EC2 实例及其互联网可访问性。

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

设计注意事项

网络访问分析器是 Amazon VPC 的一项功能,它可以在任何 AWS 账户 拥有 VPC 的企业中使用。网络管理员可以获得范围严格的跨账户 IAM 角色,以验证每个角色中是否强制使用经批准的网络路径。 AWS 账户

AWS RAM

AWS Resource Access Manager(AWS RAM) 可帮助您安全地将您在一个 AWS 资源中创建的资源 AWS 账户 与其他资源共享 AWS 账户。AWS RAM 为管理资源共享和标准化跨账户的这种体验提供了一个中心位置。这样可以在利用管理和计费隔离的同时更轻松地管理资源,并缩小多账户策略造成的影响控制优势的范围。如果您的账户由管理 AWS Organizations,则 AWS RAM 允许您与组织中的所有账户共享资源,或者仅与一个或多个指定组织单位内的账户共享资源(OUs)。无论该账户是否属于某个组织,您都可以 AWS 账户 按账户 ID 与其共享。您还可以与指定的 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 博客文章 VPC 共享:多账户和 VPC 管理的新方法以及AWS 网络基础设施白皮书。

设计注意事项

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

AWS Verified Access

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

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

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

设计注意事项

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

Amazon VPC Lattice

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

VPC Lattice 与 AWS RAM VPC 集成,可实现服务和服务网络的共享。 AWS SRA描绘了一种分布式架构,开发人员或服务所有者在其应用程序账户中创建VPC Lattice服务。服务所有者可定义侦听器、路由规则和目标组以及身份验证策略。然后,他们可与其他账户共享服务,并将这些服务与 VPC Lattice 服务网络关联。这些网络由网络管理员在网络账户中创建,并与应用程序账户共享。网络管理员配置服务网络级别的身份验证策略和监控。管理员将 VPCs VPC 莱迪思服务与一个或多个服务网络相关联。有关此分布式架构的详细演练,请参阅 AWS 博客文章使用 Amazon VPC Lattice 为您的应用程序构建安全的多账户多 VPC 连接

设计注意事项
  • 根据贵组织的服务运营模式或服务网络可见性,网络管理员可以共享他们的服务网络,并可以让服务所有者控制其服务以及 VPCs与这些服务网络的关联。或者,服务所有者可以共享其服务,并且网络管理员可以将服务与服务网络关联。

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

边缘安全

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

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

Amazon CloudFront

Amazon CloudFront 是一个安全的内容分发网络 (CDN),可针对公共网络层和传输 DDo S 尝试提供固有的保护。您可以使用 TLS 证书交付内容或应用程序,并且会自动启用高级 TLS 功能。 APIs您可以使用 AWS Certificate Manager (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 提供了多种选项来保护和限制对您的内容的访问。例如,它可以通过使用签名 URLs 和签名的 Cookie 来限制对您的 Amazon S3 来源的访问。有关更多信息,请参阅 CloudFront文档中的配置安全访问和限制对内容的访问。

AWS SRA 说明了网络账户中的集中式 CloudFront 分布,因为它们与使用 AWS Transit Gateway实现的集中式网络模式一致。通过在网络账户中部署和管理 CloudFront 分配,您可以从集中控制中受益。您可以在一个地方管理所有 CloudFront 分配,这样可以更轻松地控制访问权限、配置设置和监控所有账户的使用情况。此外,您还可以从一个集中式账户管理 ACM 证书、DNS 记录和 CloudFront 日志记录。

CloudFront 安全控制面板可直接在您的 CloudFront 分发中提供 AWS WAF 可见性和控制。您可以了解应用程序的主要安全趋势、允许和阻止的流量以及机器人活动。您可以使用调查工具(例如可视化日志分析器和内置屏蔽控件)来隔离流量模式并屏蔽流量,无需查询日志或编写安全规则。

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

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

AWS WAF

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

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

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

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

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

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

  • 您还可以在 CloudFront 层中添加一般 AWS WAF 规则,并在区域资源(例如 Application Load Balancer 或 API 网关)上添加其他特定于应用程序的 AWS WAF 规则。

AWS Shield

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

您可以使用 Shield Advanced 自动应用层 DDo S 缓解功能将 Shield Advanced 配置为自动响应,以缓解针对受保护 CloudFront 分配、弹性负载平衡(弹性负载平衡)负载均衡器(应用程序、网络和经典)、Amazon Route 53 托管区域、亚马逊 EC2 弹性 IP 地址和 AWS Global Accelerator 标准加速器的应用程序层(第 7 层)攻击。启用此功能后,Shield Advanced 会自动生成自定义 AWS WAF 规则来缓解 DDo S 攻击。Shield Advanced 还允许你访问AWS Shield 响应小组 (SRT)。您可以随时联系 SRT,为您的应用程序创建和管理自定义缓解措施,也可以在主 DDo动 S 攻击期间创建和管理自定义缓解措施。如果您希望 SRT 主动监控您受保护的资源并在尝试 DDo S 时与您联系,请考虑启用主动参与功能。

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

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

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

AWS Certificate Manager (ACM)

AWS Certificate Manager(ACM) 允许您预置、管理和部署公有和私有 TLS 证书,以便 AWS 服务 与内部连接的资源一起使用。使用 ACM,您可以快速申请证书,将其部署在 ACM 集成的 AWS 资源上,例如 Elastic Load Balancing 负载均衡器、 CloudFront 分配和 Amazon API APIs Gateway 上,然后让 ACM 处理证书续订。 申请 ACM 公共证书时,无需生成密钥对或证书签名请求 (CSR),无需向证书颁发机构 (CA) 提交 CSR,也无需在收到证书后上传并安装证书。ACM 还提供了导入第三方 CAs 颁发的 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 流量和路由控制等功能可帮助您提高可靠性。如果主应用程序端点不可用,则可将失效转移配置为将用户重新路由到其他位置。Route 53 解析器通过 AWS Direct Connect 或 AWS 托管 VPN 为您的 VPC 和本地网络提供递归 DNS。

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

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

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

设计注意事项

DNS 防火墙和 AWS Network Firewall 两者都提供域名过滤,但针对的流量类型不同。您可以同时使用 DNS Firewall 和 Network Firewall,为通过两个不同网络路径的应用层流量配置基于域的过滤:

  • DNS Firewall 可过滤来自您 VPCs内部应用程序通过 Route 53 解析器的出站 DNS 查询。您还可以将 DNS Firewall 配置为向阻止的域名发送查询的自定义响应。

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