亚马逊AWS官方博客
亚马逊云科技(中国区)网关负载均衡服务集成FortiGate安全网关扩展安全服务性能
一、概述
FortiGate安全网关提供业界领先的网络安全防御解决方案,集成网络边界全面的网络和应用层安全防御功能,如网络入侵防御、网络防病毒、网络应用控制、网络IP信誉管理等安全功能,为VPC内业务系统提供网络流量可视化和网络安全保障。当采用FortiGate安全网关作 为VPC业务系统的出入口网关时,一组FortiGate安全网关可能成为业务系统互联出入口的瓶颈,毕竟云平台上FortiGate安全网关实例性能依赖云主机计算资源。
Amazon 网关负载均衡(GWLB)为亚马逊云科技提供的托管型4层负载均衡服务,Amazon网关负载均衡将VPC 出入互联网流量或虚拟私有网关VGW流量负载分担到多个FortiGate安全网关,横向扩展FortiGate网络安全网关处理性能,同时也保障了FortiGate安全网关的高可用性。
Amazon 网关负载均衡服务(GWLB)在亚马逊云科技(中国区)已发布,本文档在亚马逊云科技 宁夏区完成网关负载均衡服务集成FortiGate安全网关扩展安全服务性能应用验证。
二、亚马逊云科技 网关负载均衡工作原理
Amazon GWLB常用于两种场景,IGW互联网出口南北向流量安全检查 和 VPC间东西向安全流量检查。无论是哪种应用场景,通过修改VPC路由表路由条目,调整数据转发路径,使需要安全检查的子网流量下一跳指向GWLB,从而使流量穿过安全网关进行安全检查或有效控制。GWLB和FortiGate安全网关之间的流量使用GENEVE协议封装,数据端口UDP 6081。
GWLB部件:
- Customer VPC:应用程序所在VPC
- GWLB endpoint: 放置在Customer VPC的一块虚拟网卡,作为路由下一跳,跨AZ冗余需要在每个AZ有一个GWLB endpoint。
- Ingress router: 绑定IGW的Internet入口路由表
- GWLB:放置在安全区的4层负载均衡服务,每个可用区会创一个网关并且获得一个地址,用于与FortiGate安全网关建立GENEVE 隧道。
- GWLB private link: Customer VPC和 Security VPC间不需要VPC peer, GWLB endpoint 通过GWLB private link连接到GWLB负载均衡
入向流量转发流程(红色路径):
- 入口流量进入IGW ingress 路由表
- Ingress 路由表把业务服务器网关路由下一跳指向GWLB endpoint虚拟网卡
- GWLB endpoint转发数据到GWLB, GWLB 把流量负载到FortiGate,FortiGate把流量回送到GWLB。
- GWLB 把数据回送到GWLB endpoint, GWLB endpoint转发数据到应用实例。
出向流量转发流程(蓝色路径):
- 应用实例路由表下一跳GWLB endpoint。
- GWLB endpoint转发数据到GWLB, GWLB 把流量负载到FortiGate,FortiGate把流量回送到GWLB,GWLB 把数据回送到GWLB endpoint。
- GWLB endpoint 转发到IGW
- IGW把出向流量转发出互联网
三、Fortigate集成GWLB 测试
本测试为手动配置操作步骤,也可通过亚马逊云科技命令行或CloudFormation 快速部署,防火墙扩容可结合弹性扩容服务自动扩展GWLB 负载目标。
本测试所使用的资源及服务:
- GWLB 服务 (亚马逊云科技 托管服务,在EC2菜单个点击阅)
- FortiGate-Amazon 公有云版网络网关( FortiGate 6.2.2以上版本,本文档采用亚马逊云科技中国区市场上线版本6.4.5)
(测试拓朴)
VPC配置
- 创建两个VPC
APP-VPC 10.0.0.0/16
- 创建子网
APP-VPC 4个子网
sub1-z1-gwlb | 10.0.1.0/24 | 可用区1 GWLB endpoint 子网 |
sub1-z1-app | 10.0.11.0/24 | 可用区1 应用子网 |
sub2-z2-gwlb | 10.0.2.0/24 | 可用区2 GWLB endpoint 子网 |
sub2-z2-app | 10.0.12.0/24 | 可用区2 应用子网 |
SEC-VPC 4个子网
sec-sub2-z1-sec | 10.1.2.0/24 | 可用区1 GWLB子网 |
sec-sub1-z1-pub | 10.1.1.0/24 | 可用区1 管理网子网 |
sec-sub2-z2-sec | 10.1.12.0/24 | 可用区2 GWLB子网 |
sec-sub1-z2-pub | 10.1.11.0/24 | 可用区2管理网子网 |
- 创建路由表
IGW ingress路由表关联IGW, 不需要关联其它子网,控制ingress路由。
验证业务服务器
当前业务服务器不经过GWLB和FortiGate ,绑定弹性IP 161.189.124.220和52.83.126.49,直接访问在区域1和区域2的两台WEB服务器
部署FortiGate
此测试FortiGate加载两个网卡,一个网卡用于管理,一个网卡用于GWLB连接。在防火墙上去互联网和GWLB都存在默认网关,启用VDOM把管理流量和GWLB流量分开。 VM-V版本启用分离VDOM.
GWLB负载目标群组选择对象为实例名或网卡IP, 如果选择实例名,GWLB 连接到FortiGate实例的主网卡地址。在部署FortiGate时,把主网卡设置成与GWLB互连网卡,第二个网卡用于管理和Internet访问网卡,在初始化FortiGate 时 把默认路由从主网卡换到第二块网卡。
- 创建FortiGate 实例 ,实例规格根据license选择
- 配置实例主网卡,添加第二块网卡, 主网卡为GWLB子网,第二块网卡为Public子网,在用户配置文件里添加FortiGate配置命令行,调整默认路由出口,启用VDOM,和修改接口VDOM。
用户数据配置脚本:
- 分配弹性IP 给FortiGate第二块网卡,激活License。
创建GWLB和负载目标群组
- EC2服务,创建负载均衡器
- 选择Gateway Load Balancer
- 选择SEC VPC, FortiGate如果是双可用区部署,就选择两个可用区,每个可用区用单独的地址与同可用区的FORTIGATE 建立GENEVE隧道
- 选择目标为实例,检测协议TCP ,端口443, FortiGate port2上开启HTTPS管理服务
- 注册目标组,选择所有FortiGate实例
- 完成GWLB创建,启用跨区域负载均衡, 在负载均衡描述栏目下的属性字段配置。
- 查看GWLB 网卡地址。创建完GWLB后,GWLB在SEC VPC 私有子网创建两个虚拟网卡,网卡描述里包含ELB gwy 标记,记下这两个网卡的IP。
点击菜单EC -> 网络与安全 -> 网络接口
FortiGate与GWLB对接
- 创建GWLB接口
- 添加防火墙策略
- 添加FortiGate路由,fg-traffic vdom默认路由指向gwlb
创建GWLB endpoint服务
- VPC > Virtual Private Cloud >终端节点服务
- 关联GWLB, 取消需要接受以使终端节点选项,
- 复制GWLB 终端服务全名
- VPC > Virtual Private Cloud> 创建GWLB 终端节点虚拟网卡
- 按名称查找服务,点验证服务可用,选择 APP VPC,一个服务节点只创建一个可用区。
调整VPC路由,流量转发至GWLB
需要调整APP VPC 三个路由表的路由
Ingress 路由表,服务器子网路由指向GWLB endpoint
GWLBe路由表,指向IGW
App 路由表,业务服务器默认网关指向GWLB endpoint
验证业务系统流量经过GWLB 和FortiGate安全检查
- 访问WEB服务器1弹性IP 161.189.124.220 WEB页面,网络流量将路由到GWLB,负载分担到FortiGate上进行安全检查,用户端对数据流的安全检查过程无感知。
在FortiGate防火墙上的日志记录里记录 113.119.109.205 等公网地址客户端访问弹性IP 161.189.124.220 对应的实例IP 10.0.11.167 流量经过FortiGate 安全检查,识别应用EDGE浏览器发起的普通http流量、SSH 、ping 流量。
从主机10.0.11.167主动发起的NTP更新访问互联网流量同样经过FortiGate安全检查
基于URL的WEB访问控制记录公网用户113.119.109.205 访问web服务器的详细URL对象记录。
- 查看FortiGate GENEVE封装数据
在FortiGate上抓包分析, FortiGate 与GWLB之间的通信数据包封装在GENEVE协议内, FortiGate与GWLB的状态检测为FortiGate接口上开放的https服务端口
关于Fortinet
Fortinet是全球领先的网络安全解决方案供应商,在下一代防火墙,Web应用防火墙,SD-WAN等领域均处于市场领先地位。Fortinet Security Fabric安全平台通过全面的产品线覆盖数字化攻击面,紧密集成的解决方案消除单点作战与系统复杂度,并通过自动化工作流提升网络安全防御/检测/响应的效率,即实现全面覆盖、深度集成、动态协同的安全解决方案来全方位护航企业进行数字化创新。全球超过50万客户选择Fortinet保护其数字化创新成果。
关于FortiGate
FortiGate是Fortinet旗舰下一代防火墙产品,集下一代防火墙、高性能SSL/IPSec VPN网关、SD-WAN 于一身,该产品同时被Gartner列于企业防火墙和SD-WAN魔力象限领导者象限。
FortiGate与亚马逊云科技平台进行了API级别的集成,能够原生支持同AZ和跨AZ的主被/双主高可用部署模式,以及通过API驱动AutoScaling弹性扩缩,最大程度保障稳定与性能。同时支持Transit Gateway,能够用来帮助用户构建云安全服务中心来实现安全集中管控。此外,FortiGate还支持SR-IOV和C5n机型以获得更高的性能。通过内置的轻量级编排引擎,自定义触发条件(实例连接到恶意IP)和执行动作(调用Lambda脚本隔离实例)实现更高效的安全响应。