SEC05-BP02 控制所有层的流量 - AWS Well-Architected Framework

SEC05-BP02 控制所有层的流量

 当构建您的网络拓扑时,您应检查每个组件的连接要求。例如,某个组件是否需要互联网可访问性(入站和出站)、连接到 VPC 的能力、边缘服务和外部数据中心。

使用 VPC,您可以使用您设置的私有 IPv4 地址范围或者 AWS 选择的 IPv6 地址范围来定义跨 AWS 区域的网络拓扑。对于入站和出站流量,您应采用深度防御方法应用多种控制,包括使用安全组(状态检测防火墙)、网络 ACL、子网和路由表。在 VPC 中,您可以在可用区中创建子网。每个子网都可以拥有一个关联的路由表,此表定义了用于管理流量在子网内所采用路径的路由规则。您可以将要连接到互联网或 NAT 网关的路由连接到 VPC 或使其经过另一个 VPC,以定义互联网可路由子网。

当在 VPC 内启动某个实例、Amazon Relational Database Service(Amazon RDS)数据库或其他服务时,它的每个网络接口都有自己的安全组。此防火墙位于操作系统层之外,可用于定义允许入站和出站流量的规则。您还可以定义安全组之间的关系。例如,通过参考对相关的实例应用的安全组,数据库层安全组中的实例仅接受来自应用程序层内实例的流量。除非您在使用非 TCP 协议,否则不必在以下情况下允许互联网直接访问 Amazon Elastic Compute Cloud(Amazon EC2)实例(甚至使用安全组禁止使用的端口):没有负载均衡器或 CloudFront。这样有助于防止通过操作系统或应用程序问题进行意外访问。您还可以为子网附加网络 ACL,它将用作无状态防火墙。您应配置网络 ACL 以缩小各层之间允许的流量范围,但请注意,您需要定义入站和出站规则。

一些 AWS 服务要求组件访问互联网进行 API 调用,其目标是 AWS API 端点 所在的位置。另外一些 AWS 服务使用 VPC 端点 ,这些端点位于您的 Amazon VPC 中。很多 AWS 服务(包括 Amazon S3 和 Amazon DynamoDB)都支持 VPC 端点,并且已在 AWS PrivateLink中广泛使用此技术。我们建议您使用此方法来访问 AWS 服务、第三方服务以及安全地托管在其他 VPC 中您自己的服务。AWS PrivateLink 上的所有网络流量保持在 AWS 骨干网中,永远不会通过互联网。连接只能由服务的使用方启动,不能由服务的提供方启动。为外部服务访问使用 AWS PrivateLink 让您可以创建没有互联网访问的气隙 VPC,帮助您保护 VPC 免受外部威胁因素的影响。第三方服务可以使用 AWS PrivateLink 允许其客户通过私有 IP 地址,从其 VPC 连接到服务。对于需要出站连接到互联网的 VPC 资产,可以让它们通过 AWS 托管的 NAT 网关、仅出站的互联网网关或者您创建并管理的 Web 代理进行仅出站(单向)连接。

未建立这种最佳实践的情况下暴露的风险等级:

实施指导

资源

相关文档:

相关视频:

相关示例: