安全组五元组规则
安全组用于配置单台或多台ECS实例的网络访问控制,是云端重要的网络安全隔离手段。它能精确控制源IP、源端口、目的IP、目的端口以及协议类型,以实现对网络流量的精细化管理。本文主要介绍五元组规则的定义、应用场景、配置方法以及相关参数说明。
背景信息
在最初设计安全组规则时:
安全组入规则只支持:源IP地址、目的端口、协议类型。
安全组出规则只支持:目的IP地址、目的端口、协议类型。
在多数应用场景下,该安全组规则简化了设置,但存在如下弊端:
无法限定入规则的源端口范围,默认放行所有源端口。
无法限定入规则的目的IP地址,默认放行安全组下的所有IP地址。
无法限定出规则的源端口范围,默认放行所有源端口。
无法限定出规则的源IP地址,默认放行安全组下的所有IP地址。
五元组规则定义
五元组规则包含:源IP地址、源端口、目的IP地址、目的端口、协议类型。
五元组规则完全兼容原有的安全组规则,能更精确地控制源IP地址、源端口、目的IP地址、目的端口以及协议类型。
五元组出规则示例如下:
源IP地址:172.16.1.0/32
源端口:22
目的IP地址:10.0.0.1/32
目的端口:不限制
协议类型:TCP
授权策略:Drop
示例中的出规则表示禁止172.16.1.0/32
通过22端口对10.0.0.1/32
发起TCP访问。
应用场景
某些平台类网络产品接入第三方厂商的解决方案是为用户提供网络服务。为了防范这些产品对用户的ECS实例发起非法访问,需要在安全组内设置五元组规则,以更精确地控制出流量和入流量。
设置了组内网络隔离的安全组,如果您想精确控制组内若干ECS实例之间可以互相访问,则需要在安全组内设置五元组规则。
配置五元组规则
您可以调用以下API接口配置五元组规则。
参数说明
在授权或解除授权时,各参数的含义如下表所示。
参数 | 入规则中各参数含义 | 出规则中各参数含义 |
SecurityGroupId | 当前入规则所属的安全组ID,即目的安全组ID。 | 当前出规则所属的安全组ID,即源安全组ID。 |
DestCidrIp | 目的IP范围,可选参数。
| 目的IP,DestGroupId与DestCidrIp二者必选其一,如果二者都指定,则DestCidrIp优先级高。 |
PortRange | 目的端口范围,必选参数 | 目的端口范围,必选参数。 |
DestGroupId | 不允许输入。目的安全组ID一定是SecurityGroupId。 | 目的安全组ID。DestGroupId与DestCidrIp二者必选其一,如果二者都指定,则DestCidrIp优先级高。 |
SourceGroupId | 源安全组ID,SourceGroupId与SourceCidrIp二者必选其一,如果二者都指定,则SourceCidrIp优先级高。 | 不允许输入,出规则的源安全组ID一定是SecurityGroupId。 |
SourceCidrIp | 源IP范围,SourceGroupId与SourceCidrIp二者必选其一,如果二者都指定,则SourceCidrIp优先级高。 | 源IP范围,可选参数。
|
SourcePortRange | 源端口范围,可选参数,不填则不限制源端口。 | 源端口范围,可选参数,不填则不限制源端口。 |