Amazon Virtual Private Cloud
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

安全性

Amazon VPC 提供三种功能,以供您用来提高和监控 VPC 的安全性:

  • 安全组 - 用作关联 Amazon EC2 实例的防火墙,可在实例级别控制入站和出站的数据流

  • 网络访问控制列表 (ACL) – 作为关联子网的防火墙,在子网级别控制入站和出站数据流

  • 流日志 - 捕获有关在您的 VPC 中传入和传出网络接口的 IP 流量的信息。

当您在 VPC 中启动一项实例时,您可以为其关联一个或多个您已经创建的安全组。在您的 VPC 中的每项实例都可能属于不同的安全组集合。如果您在启动实例时未指定安全组,实例会自动归属到 VPC 的默认安全组。有关安全组的更多信息,请参见您的 VPC 的安全组

您可以仅利用安全组来确保您的 VPC 实例安全,但您可以添加网络 ACL 以作为附加防御层。有关网络 ACL 的详细信息,请参阅网络 ACL

您可以通过创建 VPC、子网或单独的网络接口的流日志来监控传入和传出实例的已接受的 IP 流量和已拒绝的 IP 流量。流日志数据将发布到 CloudWatch Logs,这可帮助您诊断过于严格或过于宽松的安全组和网络 ACL 规则。有关更多信息,请参阅 VPC 流日志

您可以使用 AWS Identity and Access Management 来控制可以创建和管理安全组、网络 ACL 和流日志的组织成员。例如,您可以仅授予您的网络管理员此许可,而非将许可授予需要启动实例的人员。有关更多信息,请参阅 控制访问 Amazon VPC 资源

Amazon 安全组和网络 ACL 不筛选在链路本地地址 (169.254.0.0/16) 或 AWS 预留的 IPv4 地址间往返的流量;它们是该子网的前四个 IPv4 地址 (包括用于该 VPC 的 Amazon DNS 服务器地址)。同样,流日志不捕获在这些地址间往返的 IP 流量。这些地址支持以下服务:域名服务 (DNS)、动态主机配置协议 (DHCP)、Amazon EC2 实例元数据、密钥管理服务器 (KMS – 用于 Windows 实例的许可管理) 和子网中的路由。您可以在您的实例中实施额外的防火墙解决方案,以阻断与本地链接地址间的网络通信。

安全组与网络 ACL 的比较

下表概述了安全组和网络 ACL 之间的基本差异。

安全组 网络 ACL

在实例级别运行

在子网级别运行

仅支持允许规则

支持允许规则和拒绝规则

有状态:返回数据流会被自动允许,不受任何规则的影响

无状态:返回数据流必须被规则明确允许

我们会在决定是否允许数据流前评估所有规则

我们会在决定是否允许数据流时按照数字顺序处理所有规则

只有在启动实例的同时指定安全组、或稍后将安全组与实例关联的情况下,操作才会被应用到实例

自动应用到关联子网内的所有实例(因此您不需要依靠用户指定安全组)

下图展示了由安全组和网络 ACL 提供的安全层。例如,来自 Internet 网关的数据流会通过路由表中的路径被路由到合适的子网。与子网相关的网络 ACL 规则控制允许进入子网的数据流。与实例相关的安全组规则控制允许进入实例的数据流。

数据流由安全组和网络 ACL 控制