安全组
解释说明
- 安全组
安全组类似防火墙功能,是一个逻辑上的分组,用于设置网络访问控制。您可以在安全组中定义各种访问规则,当云服务器加入该安全组后,即受到这些访问规则的保护。您可以根需要创建自定义的安全组,或使用默认安全组。
安全组中包括入方向规则和出方向规则,您可以针对每条入方向规则指定来源、端口和协议,针对出方向规则指定目的地、端口和协议,用来控制安全组内实例入方向和出方向的网络流量。以图1为例,在区域A内,某客户有一个虚拟私有云VPC-A和子网Subnet-A,在子网Subnet-A中创建一个云服务器ECS-A,并为ECS-A关联一个安全组Sg-A来保护ECS-A的网络安全。- 安全组Sg-A的入方向存在一条放通ICMP端口的自定义规则,因此可以通过个人PC (计算机)ping通ECS-A。但是安全组内未包含允许SSH流量进入实例的规则,因此您无法通过个人PC远程登录ECS-A。
- 当ECS-A需要通过EIP访问公网时,由于安全组Sg-A的出方向规则允许所有流量从实例流出,因此ECS-A可以访问公网。
- 安全组规则
- 安全组中包括入方向规则和出方向规则,用来控制安全组内实例的入方向和出方向的网络流量。
- 入方向规则:控制外部请求访问安全组内的实例,即流量流入实例。
- 出方向规则:控制安全组内实例访问外部的请求,即流量从实例流出。
- 安全组规则由协议端口、源地址/目的地址等组成,关键参数说明见下表。
表1 安全组规则关键参数说明 参数
说明
策略
支持允许或拒绝。当流量的协议、端口、源地址/目的地址成功匹配某个安全组规则后,会对流量执行规则对应的策略,允许或拒绝流量。
优先级
可选范围为1-100,数字越小,规则优先级级别越高。
安全组规则匹配流量时,首先按照优先级进行排序,其次按照策略排序,拒绝策略高于允许策略,更多信息请参见流量匹配安全组规则的顺序。
类型
支持设置IPv4和IPv6协议的规则。
协议端口
包括网络协议类型和端口范围。
- 网络协议:匹配流量的协议类型,支持TCP、UDP、ICMP和GRE协议。
- 端口范围:匹配流量的目的端口,取值范围为:1~65535。
源地址或目的地址
在入方向中,匹配流量的源地址。在出方向中,匹配流量的目的地址。您可以使用IP地址、安全组、IP地址组作为源地址或者目的地址。- IP地址:某个固定的IP地址或者网段,支持IPv4和IPv6地址。比如:192.168.10.10/32(IPv4地址)、192.168.1.0/24(IPv4网段)、2407:c080:802:469::/64(IPv6网段)。
- 安全组:目标安全组和当前安全组位于同一区域,表示流量匹配目标安全组内所有实例的私有IP地址。比如:当安全组A内有实例a,安全组B内有实例b,在安全组A的入方向规则中,放通源地址为安全组B的流量,则来自实例b的内网访问请求被允许进入实例a。
- IP地址组:一个或者多个IP地址的集合,对于安全策略相同的IP网段和IP地址,建议您使用IP地址组简化管理。
- 安全组中包括入方向规则和出方向规则,用来控制安全组内实例的入方向和出方向的网络流量。
- 默认安全组和规则
弹性云服务器当前提供三个安全组模板:default、Sys-WebServer和Sys-FullAccess。
表2 默认安全组规则 方向
策略
类型
协议端口
源地址/目的地址
描述
入方向
允许
IPv4
全部
源地址:默认安全组(default)
针对全部IPv4协议,允许安全组内的实例可使用任何协议和端口互相通信,确保安全组内实例网络互通。
入方向
允许
IPv6
全部
源地址:默认安全组(default)
针对全部IPv6协议,允许安全组内的实例可使用任何协议和端口互相通信,确保安全组内实例网络互通。
出方向
允许
IPv4
全部
目的地址:0.0.0.0/0
针对全部IPv4协议,允许所有流量从安全组内实例流出,即实例可访问外部任意IP和端口。
出方向
允许
IPv6
全部
目的地址:::/0
针对全部IPv6协议,允许所有流量从安全组内实例流出,即实例可访问外部任意IP和端口。
表3 Sys-WebServer安全组规则 规则方向
策略
类型
协议端口
目的地址/源地址
描述
入方向规则
允许
IPv4
ICMP: 全部
源地址:0.0.0.0/0
针对全部IPv4协议,允许在云服务器上使用ping命令验证网络的连通性。
入方向规则
允许
IPv4
全部
源地址:当前安全组(Sys-WebServer)
针对全部IPv4协议,允许本安全组内实例的请求进入,即该条规则确保安全组内的实例网络互通。
入方向规则
允许
IPv4
TCP: 443
源地址:0.0.0.0/0
针对全部IPv4协议,允许所有IP地址通过HTTPS协议访问云服务器上搭建的网站。
入方向规则
允许
IPv4
TCP: 80
源地址:0.0.0.0/0
针对全部IPv4协议,允许所有IP地址通过HTTP协议访问云服务器上搭建的网站。
入方向规则
允许
IPv4
TCP: 22
源地址:0.0.0.0/0
针对全部IPv4协议,允许所有IP地址通过SSH远程连接到Linux云服务器。
入方向规则
允许
IPv4
TCP: 3389
源地址:0.0.0.0/0
针对全部IPv4协议,允许所有IP地址通过默认Windows远程桌面连接到Windows云服务器。
入方向规则
允许
IPv6
全部
源地址:当前安全组(Sys-WebServer)
针对全部IPv6协议,允许本安全组内实例的请求进入,即该条规则确保安全组内的实例网络互通。
出方向规则
允许
IPv4
全部
目的地址:0.0.0.0/0
针对全部IPv4协议,允许安全组内的实例可访问外部IP的所有端口。
出方向规则
允许
IPv6
全部
目的地址:::/0
针对全部IPv6协议,允许安全组内的实例可访问外部IP的所有端口。
表4 Sys-FullAccess安全组规则 规则方向
策略
类型
协议端口
目的地址/源地址
说明
入方向规则
允许
IPv4
全部
源地址:当前安全组(Sys-FullAccess)
针对全部IPv4协议,允许本安全组内实例的请求进入,即该条规则确保安全组内的实例网络互通。
入方向规则
允许
IPv6
全部
源地址:当前安全组(Sys-FullAccess)
针对全部IPv6协议,允许本安全组内实例的请求进入,即该条规则确保安全组内的实例网络互通。
入方向规则
允许
IPv4
全部
源地址:0.0.0.0/0
针对全部IPv4协议,允许所有入站流量的数据报文通过。
入方向规则
允许
IPv6
全部
源地址:::/0
针对全部IPv6协议,允许所有入站流量的数据报文通过。
出方向规则
允许
IPv4
全部
目的地址:0.0.0.0/0
针对全部IPv4协议,允许安全组内的实例可访问外部IP的所有端口。
出方向规则
允许
IPv6
全部
目的地址:::/0
针对全部IPv6协议,允许安全组内的实例可访问外部IP的所有端口。
- 安全组配置示例
安全组配置示例介绍了常用场景的安全组规则配置方法,帮助您快速配置安全组规则。
- 安全组配置建议
请您遵循白名单原则配置安全组规则,即安全组内实例默认拒绝所有外部的访问请求,通过添加允许规则放通指定的网络流量。
添加安全组规则时,请遵循最小授权原则。例如,放通22端口用于远程登录云服务器时,建议仅允许指定的IP地址登录,谨慎使用0.0.0.0/0(所有IP地址)。
