/ 虚拟私有云 vpc/ 用户指南/ / vpc访问控制概述
更新时间:2024-10-30 gmt 08:00

vpc访问控制概述-九游平台

虚拟私有云vpc是您在云上的私有网络,通过配置安全策略,可以保障vpc内部署的实例安全运行,比如弹性云服务器、数据库、云容器等。
  • 安全组对实例进行防护,将实例加入安全组内后,该实例将会受到安全组的保护。
  • 网络acl对整个子网进行防护,将子网关联至网络acl,则子网内的所有实例都会受到网络acl保护。相比安全组,网络acl的防护范围更大。
  • 云防火墙(cloud firewall,cfw)对vpc边界网络防护,可以对不同vpc之间、vpc和公网之间、vpc与云下idc之间的流量防护,实现业务互访活动的可视化与安全防护。相比安全组和网络acl,防护范围更大。
安全组、网络acl和云防火墙的应用示例如所示。本示例中:
  • 安全组:使用安全组sg-a和安全组sg-b,来防护安全组内ecs的流量。
  • 网络acl:使用网络acl fw-a防护子网subnet-a01内所有ecs的流量,网络acl fw-b防护子网subnet-a02和子网subnet-b01内所有ecs的流量,网络acl和安全组一起使用,双层防护提升安全保障。
  • 云防火墙:
    • 防护vpc和公网之间的流量:ecs通过eip-a访问公网,从eip-a送达公网的流量需要经过云防火墙cfw-a的清洗。
    • 防护不同vpc之间的流量:通过er-x连通vpc-a和vpc-b的网络,vpc之间互访的流量需要经过云防火墙cfw-b清洗。
    • 防护vpc和云下idc之间的流量:通过er-x和dc-a,连通vpc-a和云下idc之间的网络,vpc-a去往dc-a的流量需要经过云防火墙cfw-b清洗,最终确保通过dc-a送至idc的流量安全。
图1 vpc访问控制防护示意图

vpc访问控制策略的区别说明

为您提供了不同vpc访问控制策略的区别,您可以根据业务需求按需选择。
表1 不同vpc访问控制策略的区别

对比项

安全组

网络acl

云防火墙 cfw

防护范围

实例级别:防护安全组内的实例,比如弹性云服务器、数据库、云容器实例等。

子网级别:防护整个子网,子网内的所有实例都会受到网络acl的保护。

vpc边界网络防护:支持不同vpc之间、vpc和公网之间、vpc与云下idc之间的流量防护,实现业务互访活动的可视化与安全防护。

是否必选

必选,实例必须至少加入到一个安全组内。

非必选,您可以根据业务需求选择是否为子网关联网络acl

非必选,您可以根据业务需求选择是否开启vpc边界防火墙防护。

是否收费

不收取费用

不收取费用

收取费用

有无状态

有状态,允许入站请求/出站请求的响应流量出入实例,不受规则限制。

有状态,允许入站请求/出站请求的响应流量出入子网,不受规则限制。

有状态,允许入站请求/出站请求的响应流量出入公网、vpc或者云专线,不受规则限制。

规则策略

安全组支持设置允许和拒绝策略。

  • 允许策略:对于匹配成功的流量,允许流入/流出实例。
  • 拒绝策略:对于匹配成功的流量,拒绝流入/流出实例。

网络acl支持设置允许和拒绝策略。

  • 允许策略:对于匹配成功的流量,允许流入/流出子网。
  • 拒绝策略:对于匹配成功的流量,拒绝流入/流出子网。

云防火墙支持设置允许和拒绝策略。

允许策略:对于匹配成功的流量,允许流入/流出公网、vpc或者云专线。

拒绝策略:对于匹配成功的流量,拒绝流入/流出公网、vpc或者云专线。

规则报文组

支持报文三元组(即协议、端口和源/目的地址)过滤。

支持报文五元组(即协议、源端口、目的端口、源地址和目的地址)过滤。

支持报文五元组(即协议、源端口、目的端口、源地址、目的地址)以及域名、ip地理位置、七层应用协议等过滤。

规则生效顺序

当实例上绑定多个安全组,并且安全组中存在多条规则时,生效顺序如下:
  1. 首先根据实例绑定安全组的顺序生效,排在前面的安全组优先级高。
  2. 然后根据安全组内规则的优先级生效,优先级的数字越小,优先级越高。
  3. 当优先级相同的情况下,再按照策略匹配,拒绝策略高于允许策略。

一个子网只能绑定一个网络acl,当网络acl存在多条规则时,根据规则的生效顺序依次匹配流量。序号越小,排序越靠前,表示流量优先匹配该规则。

当云防火墙实例上设置多条防护规则时,根据规则的优先级进行生效。优先级数字越小,规则排序越靠前,越先生效。

应用操作

  • 创建实例(比如弹性云服务器)时,必须选择一个安全组,如果当前用户名下没有安全组,则系统会自动创建默认安全组。
  • 实例创建完成后,您可以执行以下操作:
    • 在安全组控制台,添加/移出实例。
    • 在实例控制台,为实例添加/移除安全组。

创建子网没有网络acl选项,需要先创建网络acl,添加出入规则,并在网络acl内关联子网。当网络acl状态为已开启,将会对子网生效。

创建云防火墙(专业版)并配置企业路由器,将流量引至云防火墙,通过防护规则放行或者拦截流量,放行后的流量需要经过入侵防御ips、病毒防御等功能的多重检测。

如果需要使用高阶防护能力(比如通过域名/地理位置/时间计划进行访问控制、ips入侵检测、反病毒等七层防护能力),或者您的业务有高等级保护要求,推荐您使用。

流量匹配安全组和网络acl 规则的顺序

当安全组和网络acl同时存在时,流量优先匹配网络acl的规则,然后匹配安全组规则。如所示,以入方向流量为例,为您详细介绍安全组和网络acl规则的匹配顺序。

  1. 流量优先匹配网络acl规则:
    • 当流量未匹配上任何自定义网络acl规则,则流量执行默认网络acl规则,拒绝流量流入子网。
    • 当流量匹配上自定义网络acl规则,则根据网络acl规则策略决定流量走向。
      • 当策略为拒绝时,则拒绝该流量流入子网。
      • 当策略为允许时,则允许该流量流入子网。
  2. 当流量通过网络acl进入子网时,流量进一步匹配安全组规则:
    1. 当实例关联多个安全组时,流量按照安全组的顺序进行匹配。首先匹配第一个安全组内的规则。
      1. 当流量未匹配上任何安全组规则时,则拒绝该流量进入实例。
      2. 当流量匹配上安全组规则,则根据安全组规则策略决定流量走向。
        • 当策略为拒绝时,则拒绝该流量流入实例。
        • 当策略为允许时,则允许该流量流入实例。
    2. 对于未成功匹配第一个安全组内规则的流量,继续匹配第二个安全组内的规则。
    3. 当遍历了所有安全组的入方向规则,流量均没有匹配上时,则拒绝该流量流入实例。
图2 网络acl和安全组的匹配顺序
如所示,以下为您提供具体的流量匹配示例。vpc-a内有子网subnet-a,subnet-a内有两台弹性云服务器ecs-a和ecs-b。安全防护策略如下:
  • 子网subnet-a上关联了网络acl fw-a。fw-a中的默认规则不能删除,流量优先匹配已添加的自定义规则,网络acl规则示例请参见。
  • 弹性云服务器ecs-a和ecs-b由安全组sg-a来防护。创建安全组sg-a时,您可以选择已有模板,模板中会自带部分安全组规则。您可以对系统自带的规则进行修改或者删除,也可以添加自定义规则,安全组规则示例请参见。
图3 网络acl和安全组的匹配顺序示例
表2 网络acl fw-a规则说明

方向

生效顺序

类型

策略

协议

源地址

源端口范围

目的地址

目的端口范围

说明

入方向

1

ipv4

拒绝

全部

10.0.1.0/24

全部

0.0.0.0/0

全部

自定义网络acl规则a01:拒绝来自特定ip地址10.0.1.0/24网段的流量流入子网内

入方向

2

ipv4

允许

tcp

0.0.0.0/0

全部

0.0.0.0/0

80-85

自定义网络acl规则a02:允许所有流量访问子网内实例的80-85端口

入方向

*

--

拒绝

全部

0.0.0.0/0

全部

0.0.0.0/0

全部

默认网络acl规则:拒绝所有流量流入子网

出方向

1

ipv4

允许

全部

0.0.0.0/0

全部

0.0.0.0/0

全部

自定义网络acl规则a03:允许所有流量从子网流出

出方向

*

--

拒绝

全部

0.0.0.0/0

全部

0.0.0.0/0

全部

默认网络acl规则:拒绝所有流量从子网流出

表3 安全组sg-a规则说明

方向

优先级

策略

类型

协议端口

源地址/目的地址

描述

入方向

1

允许

ipv4

自定义tcp:80

源地址:0.0.0.0/0

安全组规则a01:针对全部ipv4协议,允许所有流量访问安全组内实例的80端口

入方向

1

拒绝

ipv4

自定义tcp:82-83

源地址:0.0.0.0/0

安全组规则a02:针对全部ipv4协议,拒绝所有流量访问安全组内实例的82和83端口

入方向

1

允许

ipv4

全部

源地址:当前安全组(sg-a)

安全组规则a03:针对全部ipv4协议,确保安全组内实例网络互通

入方向

1

允许

ipv6

全部

源地址:当前安全组(sg-a)

安全组规则a04:针对全部ipv6协议,确保安全组内实例网络互通

出方向

1

允许

ipv4

全部

目的地址:0.0.0.0/0

安全组规则a05:针对全部ipv4协议,允许所有流量从安全组内实例流出

出方向

1

允许

ipv6

全部

目的地址:::/0

安全组规则a06:针对全部ipv6协议,允许所有流量从安全组内实例流出

基于以上场景,不同入方向报文对规则的匹配情况如下:

  • 报文01:报文01无法匹配上fw-a中的自定义网络acl规则,则匹配默认规则,拒绝该报文流入子网。
  • 报文02:报文02可匹配上fw-a中的自定义网络acl规则a01,根据规则策略,拒绝该报文流入子网。
  • 报文03:报文03可匹配上fw-a中的自定义网络acl规则a02,根据规则策略,允许该报文流入子网。该报文继续匹配安全组规则,无法匹配上sg-a的任何入方向规则,拒绝该报文流入实例。
  • 报文04:报文04可匹配上fw-a中的自定义网络acl规则02,根据规则策略,允许该报文流入子网。该报文继续匹配安全组规则,可匹配上sg-a的安全组规则a02,根据规则策略,拒绝该报文流入实例。
  • 报文05:报文05可匹配上fw-a中的自定义网络acl规则02,根据规则策略,允许该报文流入子网。该报文继续匹配安全组规则,可匹配上sg-a的安全组规则a01,根据规则策略,允许该报文流入实例。

相关文档

网站地图