IAAS云平台中,安全策略提供一种控制虚拟机上行和下行流量的方式,各个云平台为安全策略配置功能命名不同,一般包括安全组、防火墙、ACL等,由于实现方式不同,规则不同、作用对象也不同。

  1. 亚马逊AWS

AWS中包括安全组和网络ACL两种方式控制虚拟机的流入流出。二者作用对象不同,网络ACL可以attach到子网上,控制整个子网中虚拟机的流量,安全组则直接作用于虚拟机实例上,具体配置如下:

  1. 安全组:最多可以为每个 VPC 创建 100 个安全组

    1. 安全组作用于虚拟机实例或网络接口,即允许为每个实例或接口单独配置安全组

    2. 安全组规则:最多可以为每个安全组添加 50 条规则

      1. 支持为流入、流出流量分别配置安全组规则

      2. 可以指定允许规则,但不可指定拒绝规则。

      3. 在向安全组中添加入站规则之前,所有入站数据流都默认不被允许。

      4. 在向安全组中添加出站规则之前,所有出站数据流都会被默认允许

      5. 如果是为响应已允许的入站数据流量,则该响应可以出站,此时可忽略出站规则,反之亦然(安全组会相应地显示状态)。

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

      7. 可以添加、删除、修改安全组规则,修改后,新规则作用于已绑定的虚拟机实例

    3. VPC 默认安全组:创建VPC时,系统为该VPC创建一个默认安全组,规则为允许同一安全组发来的入站流量,允许所有出站流量。可修改

    4. 绑定虚拟机实例:支持在创建实例和实例创建成功后,绑定一个或多个安全组到虚拟机实例或网络接口,当虚拟机包含多个网络接口时,实例安全组规则作用于首选网络接口。最多可将 5 个安全组与每个网络接口关联

      1. 创建虚拟机实例时,安全组配置方式有两种:

        1. 可选择创建一个新的安全组,新的安全组包含默认安全组规则,对于linux镜像打开22端口,windows镜像打开RDP端口。可添加、删除、修改新安全组规则。

        2. 可选择已有的安全组,有两种选择,一种为直接使用已有的安全组,在创建虚拟机过程中不支持修改安全组规则。另一种为复制已有的安全组规则到一个新的安全组,之后可对新的安全组规则进行更新。

      2. 虚拟机实例创建成功后,支持绑定一个或多个安全组

  2. 网络ACL

    1. 网络ACL作用于子网,控制子网的流入流出,相当于在安全组之外,为虚拟机添加额外的安全层

    2. ACL规则


      1. 编号:按顺序评估(从编号最小的规则开始)以判断数据流是否被允许进入或离开任何与网络 ACL 关联的子网

      2. 方向:入站和出站

      3. 可以指定允许和拒绝规则

      4. ACL 没有任何状态;对允许入站数据流的响应会随着出站数据流规则的变化而改变(反之亦然)。

    3. 每个子网都必须与一个网络 ACL 关联;如果您的未在子网与一个网络 ACL 之间建立显式关联,子网将自动与默认网络 ACL 关联。

    4. VPC默认ACL

      1. 允许所有入站和出站数据流,可修改

    5. 用户自定义ACL

      1. 所有流量均关闭,可修改。


2. ×××QingCloud

×××的安全策略中文叫防火墙,英文叫安全组(Security Group),既可以作用于基础网络的虚拟主机上,也可以作用于路由器。从规则上看,和AWS ACL基本一致。

    1. 防火墙可以绑定到基础网络的云主机上,私有网络的云主机不支持绑定防火墙。绑定到基础网络的主机创建时,默认绑定缺省防火墙,主机创建成功后,可修改绑定的防火墙。(基础网络是×××系统维护的全局网络,连接基础网络的云主机通过公网IP可直接访问公网,其安全策略是通过防火墙来保护。私有网络需要用户创建并管理 ,但私有网络之间是100%隔离的,以满足对安全的100%追求,私有网络通过路由器互联并管理。)

    2. 在创建路由器时,必须选择绑定一个安全组。

    3. 防火墙规则:只列出主要规则

      1. 支持优先级设置:数字越小优先级越高,最多可添加100条规则。

      2. 支持方向设置:上行(从云资源访问外部)和下行(从外部访问云资源)

      3. 行为:接受和拒绝

      4. 协议

      5. 端口

      6. IP

    4. 系统为每个用户默认创建了一个缺省防火墙,缺省防火墙放开了 TCP 下行22号端口和 ICMP for ping,上行端口全部打开

    5. 支持用户创建防火墙,用户创建的防火墙初始状态不包含任何规则,即全部下行端口都是封闭的,上行端口全部打开。可修改规则。

    6. 过滤规则

      1. 缺省情况下,路由器所管理的私有网络之间是可以相互连通的,通过设置过滤规则来控制路由器内部私有网络之间的隔离。

      2. 过滤规则包括:

        1. 名称

        2. 优先级

        3. 行为(接受或拒绝)

        4. 源IP(CIDR或者IP范围)

        5. 源端口(端口范围)

        6. 目标IP

        7. 目标端口
           

3.Openstack包括安全组和防火墙,关于openstack的安全策略配置,后面会单独发文。