安全组规则 - Amazon Elastic Compute Cloud
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

安全组规则

安全组的规则控制允许达到与该安全组相关联实例的入站流量。这些规则还控制允许离开实例的出站流量。

以下是您的安全组规则的特征:

  • 默认情况下,安全组包含允许所有出站流量的出站规则。您可以删除这些规则。请注意,默认情况下 Amazon EC2 会阻止端口 25 上的流量。有关更多信息,请参阅对使用端口 25 发送的电子邮件的限制

  • 安全组规则始终是宽松的;您无法创建拒绝访问的规则。

  • 安全组规则允许您根据协议和端口号筛选流量。

  • 安全组是有状态的 — 如果您从实例发送一个请求,则无论入站安全组规则如何,都将允许该请求的响应流量流入。对于 VPC 安全组,这还意味着,无论出站规则如何,都允许对允许的入站流量的响应流出。有关更多信息,请参阅安全组连接跟踪

  • 您可以随时添加和删除规则。您所做的更改将会自动应用到与安全组关联的实例中。

    某些规则变更产生的影响可能会取决于跟踪流量的方式。有关更多信息,请参阅安全组连接跟踪

  • 当您将多个安全组与一个实例相关联时,将有效汇总每个安全组的规则,以创建一组规则。Amazon EC2 使用这组规则确定是否允许访问。

    您可以为一个实例分配多个安全组。因此,一个实例可以有数百条适用的规则。访问该实例时,这可能会导致问题。因此,我们建议您尽可能使规则简洁。

注意

安全组无法阻止发送至或来自 Route 53 Resolver 的 DNS 请求,Route 53 Resolver 有时称为“VPC+2 IP 地址”(请参阅《Amazon Route 53 开发者指南》中的什么是 Amazon Route 53 Resolver?)或“AmazonProvidedDNS”(请参阅《Amazon Virtual Private Cloud 用户指南》中的使用 DHCP 选项集)。如果希望通过 Route 53 Resolver 筛选 DNS 请求,则可以启用 Route 53 Resolver DNS Firewall(请参阅《Amazon Route 53 开发人员指南》中的 Route 53 Resolver DNS Firewall)。

对于每个规则,您可以指定以下内容:

  • 名称:安全组的名称(例如,"my-security-group")。

    名称最长可达 255 个字符。允许的字符包括 a-z、A-Z、0-9、空格和 ._-:/()#,@[]+=;{}!$*。如果名称后面带有空格,我们在保存名称时会删除这些空格。例如,如果您输入“Test Security Group ”作为名称,我们会将其存储为“Test Security Group”。

  • 协议:允许的协议。最常见的协议为 6 (TCP)、17 (UDP) 和 1 (ICMP)。

  • 端口范围:对于 TCP、UDP 或自定义协议,允许的端口范围。您可以指定单个端口号(例如 22)或端口号范围(例如7000-8000)。

  • ICMP 类型和代码:对于 ICMP,ICMP 类型和代码。例如,对于 ICMP 回应请求使用类型 8,对 ICMPv6 回显请求使用键入 128。

  • 源或目标:允许的流量的源(入站规则)或目标(出站规则)。指定下列项之一:

    • 一个 IPv4 地址。您必须使用 /32 前缀长度。例如,203.0.113.1/32

    • 一个 IPv6 地址。您必须使用 /128 前缀长度。例如,2001:db8:1234:1a00::123/128

    • 采用 CIDR 块表示法的 IPv4 地址范围。例如,203.0.113.0/24

    • 采用 CIDR 块表示法的 IPv6 地址范围。例如,2001:db8:1234:1a00::/64

    • 前缀列表的 ID。例如,pl-1234abc1234abc123。有关更多信息,请参阅 Amazon VPC 用户指南 中的前缀列表

    • 安全组的 ID(此处称为指定的安全组)。例如,当前安全组、来自同一 VPC 的安全组或对等 VPC 的安全组。这允许基于与指定安全组关联的资源的私有 IP 地址的流量。这并不会将指定安全组的规则添加到当前安全组。

  • (可选)描述:您可以添加规则的说明;这可帮助您在以后识别它。描述的长度最多为 255 个字符。允许的字符包括 a-z、A-Z、0-9、空格和 ._-:/()#,@[]+=;{}!$*。

当您创建安全组规则时,Amazon 会将唯一 ID 分配给规则。当您使用 API 或 CLI 修改或删除某规则时,您可以使用该规则的 ID。

当您指定一个安全组作为规则的源或目标时,规则会影响与该安全组关联的所有实例。允许的传入流量基于与源安全组相关联的实例的私有 IP 地址 (而不是公有 IP 或弹性 IP 地址)。有关 IP 地址的更多信息,请参阅 Amazon EC2 实例 IP 寻址。如果您的安全组规则引用相同 VPC 或对等 VPC 中的已删除安全组,或引用 VPC 对等连接已删除的对等 VPC 中的安全组,该规则将被标记为过时。有关更多信息,请参阅Amazon VPC Peering Guide中的使用过时的安全组规则

如果特定端口具有多个规则,Amazon EC2 将应用最宽松的规则。例如,如果有一条规则允许从 IP 地址 203.0.113.1 访问 TCP 端口 22 (SSH),而另一条规则允许所有人访问 TCP 端口 22,那么所有人都可以访问 TCP 端口 22

当您添加、更新或删除规则时,相关修改会自动应用到所有与该安全组相关的实例。