防火墙

VPC防火墙的典型场景:
  • 用户存在一套VPC网络环境,为研发关键核心业务,需要禁止网络内的云主机向公网发送TCP/UDP/ICMP协议的网络请求,使用VPC防火墙来实现。创建防火墙后设置入方向规则集和规则,限制网段内云主机的出方向流量,入方向流量不做限制,即可实现需求。
本场景主要介绍使用VPC防火墙的流程:
  1. 使用VPC网络创建云主机;
  2. 使用公有网络创建云主机;
  3. 创建VPC防火墙;
  4. 在VPC防火墙入方向规则集中添加VPC网络规则;
  5. 验证云主机与公网云主机的连通性。
假定客户环境如下:
  1. 公有网络
    Table 1. 公有网络配置信息
    公有网络 配置信息
    网卡 em01
    VLAN ID 非VLAN
    IP地址段 10.108.10.100~10.108.10.200
    子网掩码 255.0.0.0
    网关 10.0.0.1
    DHCP服务IP 10.108.10.101
  2. 管理网络
    Table 2. 管理网络配置信息
    管理网络 配置信息
    网卡 em02
    VLAN ID 非VLAN
    IP地址段 192.168.29.10~192.168.29.20
    子网掩码 255.255.255.0
    网关 192.168.29.1
    Note:
    • 出于安全和稳定性考虑,建议部署独立的管理网络,并与公有网络隔离。
    • 此管理网络与ZStack Cloud中的管理网络为相同概念(即:管理物理机、主存储、镜像服务器的网络),如果已创建可直接复用。
  3. VPC网络
    Table 3. VPC网络配置信息
    私有网络 配置信息
    网卡 em01
    VLAN ID 2800
    IP CIDR 192.168.1.0/24
    DHCP服务IP 192.168.1.2

以下介绍VPC防火墙的实践步骤。

  1. ZStack Cloud私有云界面创建云主机。

    根据规划好的网络配置信息,在ZStack Cloud云平台使用VPC网络创建云主机,名称:VPC云主机。

    同理,使用公有网络创建云主机,名称:公网云主机。

  2. 创建VPC防火墙,在ZStack Cloud私有云界面创建VPC防火墙。
    ZStack Cloud私有云主菜单,点击资源中心 > 网络服务 > 高级网络服务 > 防火墙,进入防火墙界面,点击创建防火墙,在弹出的创建防火墙界面,可参考以下示例输入相应内容:
    • 名称:设置VPC防火墙的名称
    • 简介:可选项,可留空不填
    • VPC路由器:选择需要防护的VPC路由器
      Note: 创建防火墙需要VPC路由器需处于运行状态,且未绑定任何防火墙;
    Figure 1所示:
    Figure 1. 创建VPC防火墙


  3. 在防火墙入方向添加VPC网络规则
    在防火墙详情页的规则子页面,选择入方向,点击添加规则,在弹出的添加规则界面,可参考以下示例输入相应内容:
    • 优先级:设置规则优先级为1001
      Note:
      • 优先级支持输入范围:1001-2999,数字越小表示优先级越高
      • 同一规则集内,规则优先级不能相同
    • 行为:选择丢弃
      • 接受:允许VPC路由器上的网络请求通过
      • 丢弃:不允许VPC路由器上的网络请求通过,且不向请求端反馈
      • 拒绝:不允许VPC路由器上的网络请求通过,并向请求端反馈不通过信息
    • 报文状态:可选项,不勾选
    • 协议:选择TCP
    • 源IP地址:输入已创建云主机的IP地址
    • 目的IP地址:输入公网的IP地址段:10.108.10.100-10.108.10.200
    • 立即启用:开启立即启用
    Figure 2所示:
    Figure 2. 创建规则


    同理,添加UDP和ICMP协议的规则,优先级为1002和1003。

  4. 验证云主机和公网的连通性
    1. 验证TCP协议规则

      使用iperf命令验证TCP协议规则,将VPC云主机作为发送端,公网云主机作为接收端。

      在接收端命令行输入iperf -s,在发送端命令行输入 iperf -c x.x.x.x(接收端IP地址) -i 1 -t 1000,查看展示的网络情况,如Figure 3所示:
      Figure 3. TCP协议验证
      发送端

      接收端

      如上所述,在设置规则后,TCP协议的网络请求无法发送,符合预期。
    2. 验证UDP协议规则

      使用iperf命令验证UDP协议规则,将VPC云主机作为发送端,公网云主机作为接收端。

      在接收端命令行输入iperf -s -u,在发送端命令行输入 iperf -c x.x.x.x(接收端IP地址) -u -i 1 -t 1000,查看展示的网络情况,如Figure 4所示:
      Figure 4. UDP协议验证
      发送端

      接收端

      如上所述,在设置规则后,UDP协议的网络请求发送后无法接收,符合预期。
    3. 验证ICMP协议规则
      登录VPC云主机,检查是否能够ping通公网云主机,如Figure 5所示:
      Figure 5. ICMP协议验证


      如上所述,在设置规则后,ICMP协议的网络请求无法发送,符合预期。
至此,VPC防火墙的使用方法介绍完毕。