通过GWLB快速实现IPv4流量的安全检测

如果您需要配置、扩展和管理第三方网络虚拟设备,如防火墙、入侵检测系统等,可以使用网关型负载均衡 GWLB(Gateway Load Balancer)。本文将介绍如何快速配置GWLB,并配置相应的网关型负载均衡终端节点GWLBe,以构建一个可以通过GWLB快速实现IPv4流量的安全检测系统。

场景示例

某企业为了提升业务安全性和可靠性,需要将公网IPv4访问流量路由至网络虚拟设备进行安全检测,再转发到应用服务器进行处理。

企业可以借助GWLB管理网络虚拟设备并且确保流量在被分发到应用服务器前经过严格的检测和处理,本文以下图场景为例,企业使用阿里云账号A在华北6(乌兰察布)地域创建业务VPC和安全VPC。

  • 业务VPC负责运行应用系统,且具备IPv4网关,将访问公网的流量引流至网络虚拟设备。

    在业务VPC中创建应用服务器所在子网的交换机VSW01和GWLBe所在子网的交换机VSW02,在交换机VSW01中部署应用服务器ECS01,ECS01中部署可访问的应用服务,在交换机VSW02中创建网关型负载均衡终端节点GWLBe。

  • 安全VPC负责运行网络虚拟设备。

    在安全VPC中创建GWLB,并在后端服务器组挂载网络虚拟设备,同时在安全VPC中创建终端节点服务,将GWLB实例添加为服务资源。

GWLBe与终端节点服务建立连接且状态正常时,公网访问流量即可被路由至网络虚拟设备。

image

IPv4业务从客户端到应用服务器入方向工作流程(黑色箭头)

IPv4业务从应用服务器到客户端出方向工作流程(蓝色箭头)

  1. IPv4流量通过IPv4网关进入业务VPC;

  2. 根据网关路由表,将流量发送到GWLBe;

  3. GWLBe将流量转换发往GWLB,然后由GWLB将流量转发到网络虚拟设备;

  4. 网络虚拟设备完成安全检查后,将流量转回到GWLB,通过私网连接服务将流量转到GWLBe;

  5. 根据交换机VSW02绑定的路由表,将流量发送到应用服务器。

  1. 根据交换机VSW01配置的路由表,将流量发送到GWLBe;

  2. GWLBe将流量发往GWLBGWLB将流量转发到网络虚拟设备;

  3. 网络虚拟设备完成安全检查后,将流量转回到GWLB,通过私网连接服务将流量转到GWLBe;

  4. 根据交换机VSW02配置的路由表,将流量发送到IPv4网关;

  5. IPv4网关将流量路由至客户端。

使用限制

  • 启动至少一个安全设备实例。

  • 后端服务器的安全组必须放通UDP协议类型和6081端口。

  • 创建终端节点服务时,选择地域与可用区需要同时支持私网连接和GWLB实例的地域与可用区。关于私网连接和GWLB实例支持的地域,请参见支持私网连接的地域和可用区GWLB支持的地域与可用区

  • 网关型负载均衡终端节点部署的可用区必须是终端节点服务资源部署的可用区的子集,才可以建立连接。

前提条件

  • 您已创建了业务VPC和安全VPC,在业务VPC的可用区B创建了交换机VSW01和VSW02,在安全VPC的可用区B创建了交换机VSW03。请参见创建专有网络和交换机

    说明

    交换机VSW01划分的子网用于部署应用服务器,交换机VSW02划分的子网用于部署GWLBe,交换机VSW03划分的子网用于部署GWLB。

  • 您已创建并激活了IPv4网关并关联业务VPC,请参见创建和管理IPv4网关

  • 您已创建IPv4网关的路由表、交换机VSW01的路由表和VSW02的路由表,请参见创建和管理路由表

  • 您已在业务VPC中创建ECS实例ECS01,且ECS01中部署了应用服务,如果ECS01实例需要进行公网通信,必须分配公网IP;在安全VPC的可用区B中创建ECS实例ECS02和ECS03,且ECS02和ECS03分别部署了网络虚拟设备的镜像。

  • 您已经给ECS01、ECS02和ECS03创建了安全组。您可以根据自己的实际业务和安全要求配置安全组规则。请参见创建安全组

配置步骤

步骤一:创建GWLB实例

实例是一个负载均衡服务实体,您需要先创建GWLB实例。

  1. 登录网关型负载均衡GWLB控制台

  2. 在顶部菜单栏,选择GWLB所在的地域。

  3. 实例页面,单击创建网关型负载均衡

  4. 网关型负载均衡购买页面,完成以下配置。

    此处仅列出和本文强相关的配置项,其他未列出的配置项使用默认值。关于参数的更多信息,请参见创建和管理GWLB实例

    配置

    说明

    实例名称

    输入实例名称。

    专有网络

    选择实例所属的安全VPC。

    地域和可用区

    选择实例所属的地域。本文选择华北6(乌兰察布)

    可用区

    至少选择1个可用区。本文选择乌兰察布 可用区B及该可用区下的交换机VSW03。

    协议版本

    选择实例的协议版本。本文选择IPv4

    服务关联角色

    首次创建网关型负载均衡实例时,需要单击创建服务关联角色,创建一个名称为AliyunServiceRoleForGwlb的服务关联角色。

    说明

    该参数仅在首次创建GWLB时展示。

  5. 单击立即购买,然后根据控制台提示完成实例开通。

  6. 返回实例页面,选择对应的地域即可看到新建的实例。

步骤二:创建后端服务器组

您需要创建服务器组并添加后端服务器来接受GWLB转发的客户端请求。

  1. 在左侧导航栏,选择网关型负载均衡GWLB > 服务器组

  2. 服务器组页面,单击创建服务器组

  3. 创建服务器组对话框配置服务器组相关的参数,然后单击创建

    此处仅列出和本文强相关的配置项,其他未列出的配置项使用默认值。关于参数的更多信息,请参见创建和管理服务器组

    参数

    描述

    服务器组类型

    选择一种服务器组类型:本文选择服务器类型

    服务器组名称

    输入服务器组名称。

    VPC

    从VPC下拉列表中选择本文ECS实例所属的安全VPC。

    说明

    确保您选择的VPC与创建GWLB实例时选择的VPC相同。

    选择调度算法

    选择一种调度算法,本文选择五元组哈希

    健康检查方法

    选择健康检查方法或关闭健康检查。本文选择TCP

    健康检查端口

    输入健康检查端口,本文配置80

  4. 服务器组创建成功对话框单击添加后端服务器

  5. 后端服务器页签单击添加后端服务器

  6. 添加后端服务器面板,选择服务器类型

    本文服务器类型配置为云服务器ECS/弹性网卡ENI

  7. 选择已创建的ECS02和ECS03实例,单击确定

    说明
    • 本文服务器类型配置为云服务器ECS/弹性网卡ENI

    • 请确保您已经在后端服务器部署网络虚拟设备的镜像,并且后端服务器具备处理Geneve协议流量的能力。

步骤三:配置监听

您需要为实例配置监听,并给监听关联上后端服务器组,将所有端口的流量通过Geneve协议的方式转发至后端服务器。

  1. 在左侧导航栏,选择网关型负载均衡GWLB > 实例,单击实例ID。

  2. 单击监听页签,然后单击创建IP监听

  3. 创建IP监听配置页面,选择服务器组类型,选择已创建的服务器组信息。

  4. 页面显示已添加的服务器列表,单击确定

步骤四:配置终端节点服务

服务提供方需要通过终端节点服务让GWLB对外提供服务。

  1. 登录终端节点服务控制台

  2. 终端节点服务页面,单击创建终端节点服务

  3. 创建终端节点服务页面,根据以下信息配置终端节点服务,然后单击确定创建

    此处仅列举和本文相关的配置。

    参数

    描述

    所属地域

    本文选择华北6(乌兰察布)

    服务资源类型

    终端节点服务下的服务资源的类型。本文选择网关型负载均衡GWLB

    选择服务资源

    选择服务资源的可用区及可用区下的服务资源。

    本文可用区选择乌兰察布 可用区B。可用区B的服务资源选择步骤一:创建GWLB实例中创建的支持私网连接的GWLB实例。

    网络类型

    本文选择IPv4

    自动接受终端节点连接

    选择是否自动接受终端节点的连接请求。本文选择

    说明

    此处设置自动接受终端节点连接,在创建终端节点后,终端节点服务会自动接受终端节点的连接请求。

    服务付费者

    本文选择服务使用方

步骤五:配置网关型负载均衡终端节点

服务使用者需要创建相应的GWLBe,从而与终端节点服务建立连接。

  1. 登录终端节点控制台

  2. 终端节点页面,单击接口终端节点页签,然后单击创建终端节点

  3. 创建终端节点页面,根据以下信息配置终端节点,然后单击确定创建

    此处仅列举和本文强相关的配置。

    参数

    描述

    所属地域

    本文选择华北6(乌兰察布)

    节点名称

    自定义终端节点的名称。

    终端节点类型

    终端节点选择的节点类型。本文选择网关型负载均衡终端节点

    终端节点服务

    本文先单击选择可用服务,然后选择步骤四:配置终端节点服务创建的终端节点服务。

    专有网络

    选择终端节点所属的专有网络。本文选择业务VPC的ID。

    可用区与交换机

    选择终端节点服务对应的可用区,然后选择该可用区内的交换机,系统会自动在该交换机下创建一个终端节点网卡。

    本文可用区选择乌兰察布 可用区B并选择可用区B内的VSW02。

    网络类型

    本文选择IPv4

    说明

    确保终端节点的连接状态是已连接。

步骤六:配置路由

服务使用者需要配置路由将流量引到GWLBe。

  1. 登录专有网络管理控制台

  2. 在左侧导航栏,单击路由表

  3. 在顶部菜单栏,选择路由表所属的地域。

  4. 路由表页面,单击目标路由表的ID。

    说明

    目标路由表包含IPv4网关路由表、VSW01的路由表和VSW02的路由表,请依次打开进行配置。

  5. 路由表详情页面,在路由条目列表页签,单击系统路由条目,查看系统路由条目。

    系统会在自定义路由表中自动添加以下系统路由:

    以路由表所属VPC内的交换机网段为目标网段的路由条目,用于交换机内的云产品通信。

  6. 修改系统路由条目:在配置IPv4网关的路由表时,在路由条目列表 > 系统路由条目页签,找到目标系统路由条目,然后在操作列单击编辑,在编辑路由表条目对话框,配置以下参数,然后单击确定。该路由条目会出现在自定义路由条目中。

    配置

    说明

    目标网段

    显示转发流量的目标网段。目标网段不支持修改。本文为192.168.2.0/24。

    名称

    修改路由条目的名称。

    下一跳类型

    选择下一跳类型。本文为网关型负载均衡终端节点。

    网关型负载均衡终端节点

    选择步骤五:配置网关型负载均衡终端节点创建的网关型负载均衡终端节点。

  7. 新增自定义路由条目:在配置交换机的路由表时,单击自定义路由条目,输入目标网段和下一跳类型,单击确定

    • 在配置交换机VSW01的路由表时,本文自定义目标网段为0.0.0.0/0,下一跳类型为网关型负载均衡终端节点的路由条目。

    • 在配置交换机VSW02的路由表时,本文自定义目标网段为0.0.0.0/0,下一跳类型为IPv4网关的路由条目。

  • IPv4网关的路由表配置

    IPv4网关的路由表必须具有将发往应用服务器的流量路由到GWLBe的条目。本文IPv4网关的路由表配置如下表所示,仅供参考。

    目标网段

    下一跳类型

    路由条目类型

    192.168.5.0/24

    local

    系统路由条目

    192.168.2.0/24

    网关型负载均衡终端节点

    自定义路由条目

  • 应用服务器所在子网的交换机VSW01的路由表配置

    交换机VSW01的路由表必须具有将来自应用服务器的所有流量路由到GWLBe的条目。本文交换机VSW01的路由表配置如下表所示,仅供参考。

    目标网段

    下一跳类型

    路由条目类型

    192.168.2.0/24

    local

    系统路由条目

    192.168.5.0/24

    local

    系统路由条目

    0.0.0.0/0

    网关型负载均衡终端节点

    自定义路由条目

  • GWLBe所在子网的交换机VSW02的路由表配置

    交换机VSW02的路由表必须将从检查返回的流量路由到最终目的地。对于来自互联网的流量,本地路由将确保其会到达应用服务器。对于来自应用服务器的流量,则添加将所有流量路由到IPv4网关的条目。本文交换机VSW02的路由表配置如下表所示,仅供参考。

    目标网段

    下一跳类型

    路由条目类型

    192.168.2.0/24

    local

    系统路由条目

    192.168.5.0/24

    local

    系统路由条目

    0.0.0.0/0

    IPv4网关

    自定义路由条目

步骤七:测试验证

测试访问流量连通性

登录应用服务器ECS01,测试ECS01对公网的访问,执行如下命令:

ping www.aliyun.com

返回报文显示应用服务器对公网访问的具体信息,并保持产生流量一段时间,ECS01访问公网的流量连通性测试通过。

返回报文如下所示:

image

测试流量经过安全检测

登录后端服务器ECS02或者ECS03,捕获所有经过端口为6081的数据包,执行如下命令:

tcpdump -i any port 6081

返回报文显示有来自ECS01的请求和响应数据,实现了通过GWLB,将访问流量路由至网络虚拟设备进行安全检测的过程。

返回报文如下所示:

image

相关文档