VPC安全组


aws的安全组充当实例的虚拟防火墙以控制入站和出站流量。

当您在 VPC 中启动实例时,您可以为该实例最多分配 5 个安全组。

安全组在实例级别运行,而不是子网级别。

因此,在您的 VPC 的子网中的每项实例都归属于不同的安全组集合。

如果您在启动时没有指定具体的安全组,实例会自动归属到 VPC 的默认安全组。

对于每个安全组,您可以添加规则以控制到实例的入站数据流,以及另外一套单独规则以控制出站数据流。

安全组功能:

可以指定允许规则,但不可指定拒绝规则(默认禁止)

可以为入站和出站流量指定单独规则

默认情况下,安全组包含允许所有出站流量的出站规则

您可以删除该规则并添加只允许特定出站流量的出站规则

如果您的安全组没有出站规则,则不允许来自您的实例的出站流量

安全组是有状态的 — 如果您从实例发送一个请求,则无论入站安全组规则如何,都将允许该请求的响应流量流入。
如果是为响应已允许的入站流量,则该响应可以出站,此时可忽略出站规则。

这句话比较难理解,翻译成白话文:

如果入方向有一条关于tcp 80 源为1.1.1.1/32的规则,则响应1.1.1.1/32的80出流量。
就表示假设你设置了出方向所有流量禁止,都无效

与安全组关联的实例无法彼此通信,除非您添加了相应的允许规则(已有此类默认规则的默认安全组除外)。

安全组与网络接口关联。在您启动实例之后,您可以更改与该实例关联的安全组,从而更改与主网络接口 (eth0) 关联的安全组。

举例

inbound  
type    protocol    port    source  
自定义  tcp         22      0.0.0.0/0 表示入方向的ssh运行链接  
所有    tcp         0-65535  elb-safe-group 表示运行在elb-safe-group的所有实例,可以允许访问所有端口  
Devops