基于AWS GWLB实现安全检测的线性扩展

一、概述

AWS中国区发布AWS 网关负载均衡服务,本文档在AWS 宁夏区完成验证网关负载均衡服务集成FortiGate扩展安全检查性能应用实践。

AWS中运行着关键应用程序,FortiGate安全网关对进出AWS环境的流量进行安全检查,单个虚拟实例或主备冗余虚拟实例处理能力有限,容易成为网络性能瓶颈。

AWS 网关负载均衡(GWLB)为AWS提供的托管型4层负载均衡服务,AWS网关负载均衡将互联网IGW流量或虚拟私有网关VGW流量负载分担到多个安全网关,扩展互联网出口和VPC互连网络安全处理性能,并且保障FortiGate安全网关的容错能力和扩展性。

文章来源地址https://uudwc.com/A/yMV8

二、AWS 网关负载均衡工作原理

AWS GWLB常用于两种场景,IGW互联出口南北向流量安全检查 和  VPC间东西向安全流量检查。无论是哪种应用场景,通过修改VPC路由表路由条目,调整数据转发路径,使需要安全检查的子网流量下一跳指向GWLB,从而使流量穿过安全网关进行安全检查或安全控制。GWLB和Fortigate安全网关之间的流量使用GENEVE协议封装,数据端口UDP 6081。

GWLB部件:

  1. Customer VPC:应用程序所在VPC
  2. GWLB endpoint: 放置在custmer VPC的一块虚拟网卡,作为路由下一跳,需要冗余在每个AZ有一个GWLB endpoint。
  3. Ingress router: 绑定IGW的Internet入口路由表
  4. GWLB:放置在安全区的4层负载均衡服务,每个可用区会创一个网关并且获得一个地址,用于与Fortigate建立GENEVE 隧道。
  5. GWLB private link: Customer VPC和 Security VPC间不需要VPC peer,  GWLB endpoint 通过GWLB private link连接到GWLB负载均衡

入向流量转发流程(红色路径):

  1. 入口流量进入IGW ingress 路由表
  2. Ingress 路由表把业务服务器网关路由下一跳指向GWLB  endpoint虚拟网卡
  3. GWLB endpoint转发数据到GWLB, GWLB 把流量负载到fortigate,fortigate把流量回送到GWLB.
  4. GWLB 把数据回送到GWLB endpoint, GWLB endpoint转发数据到应用实例。

出向流量转发流程(蓝色路径):

  1. 应用实例路由表下一跳GWLB endpoint。
  2. GWLB endpoint转发数据到GWLB, GWLB 把流量负载到fortigate,fortigate把流量回送到GWLB,GWLB 把数据回送到GWLB endpoint。
  3. GWLB endpoint 转发到IGW
  4. IGW把出向流量转发出互联网

三、FortiGate集成GWLB 测试

         本测试为手动配置操作步骤,可通过AWS命令行或CloudFormation  快速部署,防火墙扩容可结合弹性扩容服务自动扩展GWLB 负载目标。

                                 ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        (测试拓朴)

VPC配置

  1. 创建两个VPC

App-vpc               10.0.0.0/16

SEC-VPC                10.1.0.0/16

  1. 创建子网

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管理网子网

  1. 创建路由表

APP-VPC 3个路由表:

IGW ingress路由表关联IGW, 不需要关联其它子网,控制ingress路由。

GWLBE路由关联两个 GWLBE子网

APP路由表关联应用子网

验证业务服务器

         当前业务服务器不经过GWLB和fortigate ,绑定弹性IP,直接访问业务服务器

部署FortiGate

此测试FortiGate加载两个网卡,一个网卡用于管理,一个网卡用于GWLB连接。在防火墙上去互联网和GWLB都存在默认网关,启用VDOM把管理流量和GWLB流量分开。 VM-V版本启用分离VDOM.

GWLB负载目标群组选择对象为实例名或网卡IP, 如果选择实例名,GWLB 连接到FortiGate实例的主网卡地址。在部署FortiGate时,把主网卡设置成与GWLB互连网卡,第二个网卡用于管理和INTERNET访问网卡,在初始化FortiGate 时 把默认路由从主网卡换到第二块网卡。

  1. 创建fortigate 实例 ,实例规格根据LICENSE选择

]2. 配置实例主网卡,添加第二块网卡, 主网卡为GWLB子网,第二块网卡为PUBLIC子网,在用户配置文件里调整默认路由出口,启用VDOM,修改接口VDOM

用户数据配置脚本:

config system interface

edit "port1"

set defaultgw disable

set allowaccess ping https ssh fgfm probe-response

next

edit "port2"

set mode dhcp

set allowaccess ping https ssh 

set defaultgw enable

next

end

config system global

set vdom-mode split-vdom

end

config global

config system interface

edit "port1"

set vdom "FG-traffic"

end

end

  1. 分配弹性IP 给foritgate  第二块网卡,激活LICENSE。

创建GWLB和负载目标群组

  1. EC2服务,创建负载均衡器
  2. 选择gateway load balancer

  1. 选择security vpc,  fortigate如果是双可用区部署,就选择两个可用区,每个可用区用单独的地址与同可用区的FORTIGATE 建立GENEVE隧道

  1. 选择目标为实例,检测协议TCP ,端口443,Fortigate port2上开启HTTPS管理服务

  1. 注册目标组,选择所有fortigate实例

  1. 完成GWLB创建,启用跨区域负载均衡, 在负载均衡描述栏目下的属性字段配置。

  1. 查看GWLB 网卡地址。创建完GWLB后,GWLB在SECURITY VPC  私有子网创建两个虚拟网卡,网卡描述里包含ELB gwy 标记,记下这两个网卡的IP。

点击菜单EC2- 网络与安全- 网络接口

Fortigate与GWLB对接

  1. 创建GWLB接口

config vdom

edit FG-traffic

config system geneve

    edit "geneve1"

        set interface "port1"

        set type ppp

        set remote-ip 10.1.2.46    (同区域gwlb网卡地址)

    next

end

end

  1. 添加防火墙策略

config firewall policy

    edit 1

        set name "1"

        set uuid 8cb7c62c-a257-51eb-20fd-62de456d8a8b

        set srcintf "gwlb"

        set dstintf "gwlb"

        set srcaddr "all"

        set dstaddr "all"

        set action accept

        set schedule "always"

        set service "ALL"

        set utm-status enable

        set ssl-ssh-profile "certificate-inspection"

        set webfilter-profile "g-default"

        set application-list "g-default"

        set logtraffic all

    next

end

  1. 添加Fortigate路由,fg-traffic vdom默认路由指向gwlb

config router static

    edit 1

        set device "gwlb"

    next

end

4,验证GWLB 目标健康状态为healthy

创建GWLB endpoint服务

  1. VPC > Virtual Private Cloud >终端节点服务
  2. 关联GWLB, 取消需要接受以使终端节点选项,

3,复制GWLB 终端服务全名

  1. VPC > Virtual Private Cloud> 创建GWLB 终端节点虚拟网卡
  2. 按名称查找服务,点验证服务可用,选择 APP VPC,一个服务节点只创建一个可用区。

 

调整VPC路由,流量转发至GWLB

需要调整APP VPC 三个路由表的路由

Ingress 路由表,服务器子网路由指向GWLB endpoint

Gwlbe路由表,指向IGW

App 路由表,业务服务器默认网关指向GWLB endpoint 

验证业务系统流量经过GWLB 和fortigate 安全检查

  1. 打开服务器WEB页面,SSH 服务。

 

  1. 查看fortigte GENEVE封装数据

阅读剩余 95%

原文地址:https://blog.csdn.net/cyt_317/article/details/126562825

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

h
上一篇 2023年06月16日 07:35
FPGA 学习笔记:Vitis IDE launch failed 的解决方法
下一篇 2023年06月16日 07:35