网络ACL(Network Access Control List)是专有网络VPC中的网络访问控制功能。您可以自定义设置网络ACL规则,并将网络ACL与交换机绑定,实现对交换机中云服务器ECS实例流量的访问控制。
功能特性
网络ACL规则仅过滤绑定的交换机中ECS实例的流量(包括SLB实例转发给ECS实例的流量)。
说明如果您的ECS实例绑定了辅助弹性网卡,且辅助弹性网卡绑定了设置网卡可见模式的EIP,那么网络ACL不过滤该ECS实例的流量。更多信息,请参见设置EIP网卡可见模式。
网络ACL的规则是无状态的,即设置入方向规则的允许请求后,需要同时设置相应的出方向规则,否则可能会导致请求无法响应。
网络ACL无任何规则时,会拒绝所有出入方向的访问。
网络ACL与交换机绑定,不过滤同一交换机内的ECS实例间的流量。
网络ACL放通的DNS服务器为100.100.2.128/28、100.100.2.112/28;放通的Metaserver(元数据服务器)为100.100.100.200/32。
规则说明
规则元素说明
网络ACL中的元素说明如下:
生效顺序:值越小,规则的优先级越高。系统从生效顺序为1的规则开始判断,只要有一条规则与流量匹配,即应用该规则,并忽略其他规则。
例如,ECS实例请求访问目的地址为172.16.0.1的数据包,在经过如下表所示的ACL规则配置后,172.16.0.1匹配生效顺序2和生效顺序3规则中的目的地址,由于生效顺序2的优先级高于生效顺序3,所以会根据生效顺序2规则拒绝该请求。
生效顺序
协议类型
目的地址
目的端口范围
策略
类型
1
ALL
10.0.0.0/8
-1/-1
允许
自定义
2
ALL
172.16.0.0/12
-1/-1
拒绝
自定义
3
ALL
172.16.0.0/12
-1/-1
允许
自定义
策略:针对特定流量选择允许或拒绝。
协议类型:指定数据流的协议类型,可选择以下协议。
ALL:所有协议。当选择所有协议类型时,端口范围无法设置,为-1/-1,表示不限制端口。
ICMP:网络控制报文协议。当选择该协议类型时,端口范围无法设置,为-1/-1,表示不限制端口。
GRE:通用路由封装协议。当选择该协议类型时,端口范围无法设置,为-1/-1,表示不限制端口。
TCP:传输控制协议。当选择该协议类型时,端口范围为1~65535。设置格式为1/200或80/80,且不能设置为-1/-1。
UDP:用户数据报协议。端口范围为1~65535。设置格式为1/200或80/80,且不能设置为-1/-1。
ICMPv6:IPv6网络控制报文协议。当选择所有协议类型时,端口范围无法设置,为-1/-1,表示不限制端口。
源地址(限入方向规则):数据流的源地址。
目的地址(限出方向规则):数据流的目的地址。
源端口范围(限入方向规则):入方向规则作用的端口范围。
目的端口范围(限出方向规则):出方向规则作用的端口范围。
出方向和入方向规则
添加出方向规则和入方向规则前,您需要了解:
在网络ACL中添加或删除规则,更改规则后会自动应用到与其绑定的交换机。
在网络ACL中添加IPv6类型的出方向规则和入方向规则时,您需要为网络ACL所在的VPC分配IPv6网段。
当您配置了DHCP选项集时,您需要在网络ACL的出入方向规则中添加放行DNS域名服务器配置的IP地址。当未添加规则时,可能会造成DHCP选项集的业务异常。
默认创建的出方向和入方向规则会根据选择的地域有所不同。
选择的地域不支持IPv6网络ACL时,入方向和出方向默认创建1条规则。
除以上地域外的其他地域:
如果ACL所属的VPC未启用IPv6能力,出入方向会默认创建5条规则,其中云服务路由是网络ACL放通的DNS服务器和Metaserver(元数据服务器)的地址。
如果ACL所属的VPC开启IPv6能力,则入方向和出方向各添加一条系统默认拒绝和一条自定义全放通规则,因此会默认创建7条规则。
网络ACL与安全组
与交换机绑定的网络ACL规则控制流入和流出交换机的数据流,与ECS实例相关的安全组规则控制流入和流出ECS实例的数据流。网络ACL和安全组的基本差异如下表所示。
对比项 | 网络ACL | 安全组 |
运行范围 | 在交换机级别运行。 | 在ECS实例级别运行。 |
返回数据流状态 | 无状态:返回数据流必须被规则明确允许。 | 有状态:返回数据流会被自动允许,不受任何规则的影响。 |
是否评估规则 | 不评估所有规则,按照规则的生效顺序处理所有规则。 | 执行规则前,会评估所有规则。 |
与ECS实例的关联关系 | ECS实例所属的交换机仅允许绑定一个网络ACL。 | 一个ECS实例可加入多个安全组。 |
网络ACL和安全组提供的安全层如下图所示。
使用限制和配额
功能发布及地域支持情况
IPv4网络ACL支持的地域
区域 | 支持IPv4网络ACL的地域 |
亚太 | 华东1(杭州)、华东2(上海)、华东5 (南京-本地地域)、华北1(青岛)、华北2(北京)、华北3(张家口)、华北5(呼和浩特)、华北6(乌兰察布)、华南1(深圳)、华南2(河源)、华南3(广州)、西南1(成都)、中国香港、华中1(武汉-本地地域)、华东6(福州-本地地域)、日本(东京)、韩国(首尔)、新加坡、马来西亚(吉隆坡)、印度尼西亚(雅加达)、菲律宾(马尼拉)、泰国(曼谷) |
欧洲与美洲 | 德国(法兰克福)、英国(伦敦)、美国(硅谷)、美国(弗吉尼亚) |
中东 | 阿联酋(迪拜)、沙特(利雅得) 重要 沙特(利雅得)地域由合作伙伴运营。 |
IPv6网络ACL支持的地域
区域 | 支持IPv6网络ACL的地域 |
亚太 | 华东1(杭州)、华东2(上海)、华北1(青岛)、华北2(北京)、华北5(呼和浩特)、华北6(乌兰察布)、华南1(深圳)、华南3(广州)、西南1(成都)、中国香港、日本(东京)、韩国(首尔)、马来西亚(吉隆坡)、印度尼西亚(雅加达)、菲律宾(马尼拉)、泰国(曼谷) |
欧洲与美洲 | 德国(法兰克福)、美国(硅谷)、美国(弗吉尼亚) |
中东 | 阿联酋(迪拜)、沙特(利雅得) 重要 沙特(利雅得)地域由合作伙伴运营。 |
配额限制
配额名称 | 描述 | 默认限制 | 提升配额 |
vpc_quota_nacl_ingress_entry | 单个网络ACL支持创建的入方向规则数量 | 20条 | |
vpc_quota_nacl_egress_entry | 单个网络ACL支持创建的出方向规则数量 | 20条 | |
nacl_quota_vpc_create_count | 单个VPC支持创建的网络ACL数量 | 20个 |
相关文档
您可以参考创建和管理网络ACL,使用网络ACL实现对VPC的访问控制。
您可以使用网络ACL限制不同交换机下的ECS间的互通或限制本地数据中心与云上的互通。