ENS实例之间,可以通过ENA完成互通,也可以通过部署第三方FortiGate程序来完成互通,本文介绍通过FortiGate的方式完成互通。而ENS与IDC之间,ENS与ECS之间互通也可使用类似方案完成。
本文介绍FortiGate在ENS上安装部署的方式,以实现不同ENS节点的VPC内网通过VPN互通。一共分为以下四个步骤进行描述:
场景介绍
安装FortiGate
配置FortiGate
测试互通性
1 场景介绍
当客户使用多个边缘节点服务时,而多个边缘节点服务之间可以通过专有线路进行广域网互联,也可以通过VPN的方式进行互联,本文主要介绍通过VPN的方式互联。
在进行网络互联之前,需要提前规划IP地址,并确定测试方式为VM1与VM4之间互相ping来验证连通性。
1.1 IP地址规划
ENS VPC | 网段 | 实例 | 内网IP | 公网IP |
ENS VPC1 | 10.0.100.0/24 | VM2(部署 FortiGate) | 10.0.100.2 | 创建实例时候申请或者使用eip |
VM1 | 10.0.100.3 | |||
ENS VPC2 | 172.16.100.0/24 | VM3(部署FortiGate) | 172.16.100.2 | 创建实例时候申请或者使用eip |
VM4 | 172.16.100.3 |
1.2 网络拓扑
网络拓扑如下,客户在ENS节点1和节点2分别拥有VPC,并在VPC内部都有独立的VM,在本次互通测试中,需要使得下图中的"ENSVM1"和"ENS VM4"实现内网互通。
2 安装FortiGate
本部分将对如何从ENS控制台依次创建VPC、交换机、安全组、实例等进行FortiGate创建进行介绍,一共分为四个步骤:
在ENS上创建VPC和交换机
配置安全组
部署FortiGate实例
下发引流配置
2.1 在ENS上创建VPC和交换机
依次选择“网络管理-网络-创建网络”,选择已使用的节点,输入名称、IPv4网段,同时配置交换机,输入子网段。
点击创建后,在网络和交换机页面可查看刚才新增的VPC和交换机,即可确定已经创建成功。
除了上述的创建方式外,也可以在“网络管理-交换机”页面下,点击创建交换机创建,实现相同的功能
2.2 配置安全组
因为安全组默认会过滤流量,所以需要针对安全组做特别配置,需要放开部分流量端口,测试中为了方便,默认允许入方向所有流量,也可以最严格配置,允许ssh、icmp,https、udp。
选择“网络管理-安全组管理-创建安全组”:
出方向配置。默认全部允许:
2.3 部署FortiGate实例
本步骤将展示如何按要求在ENS控制台上按流程创建出FortiGate实例,这个实例将承载VPN的流量,对应图表中的VM2。
选择“算力与镜像-实例”,点击创建实例。
在实例创建的类型选择X86计算类型,镜像选择自定义镜像的FortiGate-VM-7.2.8,其中ENS如何创建自定义镜像,可以参考此处:创建自定义镜像
规格推荐说明文档。https://www.fortinet.com/content/dam/fortinet/assets/data-sheets/FortiGate_VM_KVM.pdf
配置网络和安全组。网络选择自建网络,区域选择刚刚配置专有网络vpc所在节点,然后依次选择网络,交换机和安全组,同时创建公网网卡,并设置限速。
系统设置。设置密钥和实例名称,默认密码请参考FortiGate官方描述。
确认订单。核对基本配置、网络信息、系统配置,选择购买时长,最后进行创建。
创建完毕之后,可通过在实例列表查看来验证是否创建成功。
上述步骤是创建VM2的方式,可以在同VPC创建另外一个VM,但是不选择FortiGate的镜像,以用于验证。
2.4 下发引流配置
以左侧ENS节点为例,当VM1创建完毕,VM2已经是FortiGate镜像之后,VM1去往VM4的流量,需要引到VM2对应的FortiGate上,这样才能实现通过VPN连接VM1和VM4。具体步骤如下:
选择“网络管理-路由表”,点击对应的路由表ID(之前的VPC)
选择“自定义路由表条目-添加路由条目”,配置对端IPV4网段,并把下一跳指定为之前配置好的fortiGate实例
配置好后界面会显示如下,则说明流量会引入到FortiGate上。
2.5 配置Site2 VPC及FortiGate
创建第二个专有网络VPC并分配子网段
配置fortigate实例
增加引流配置
3 配置FortiGate
FortiGate的配置需要参考官方文档,不同版本会有少量差异,文档具体位置在:https://handbook.fortinet.com.cn/
配置一共分为以下三个步骤:
注意事项
导入license
网络初始化
系统初始化
网络检查
配置IPSEC
3.1 注意事项
在中国境内会对互联网访问的http和https进行备案管理,否则不予开放80和443端口,请关注。
可以通过ssh登录FortiGate设备,修改https端口号,然后再进行备案。
下面是修改为8443端口的配置命令:
config system global
set admin-sport 8443
end
3.2 导入license并初始化
对设备进行license导入后进行基础的初始化,验证网络配置生效后才可以做IPSEC的配置:
3.2.1 导入license
创建后的默认初始化账号密码,账号 admin,密码请在配置完毕后尽快修改掉默认密码,避免风险。
需要绑定FortiGate License,本文使用BYOL的方式绑定:
需要特别注意的是,导入license后会自动重启,重启后需要重新登录,并开始配置IPSEC。
3.2.2 系统初始化
重启后网页输入ip地址进入控制台 通过HTTPS访问fortigate
正常初始化配置:
第一次部署时,建议升级到最新版本7.4.X或咨询厂商(最新版本比如配置ipsec时候可以减少后期手动配置),登录进入控制台:
系统需要进行初始化后才能继续使用,在左侧选择settings,进行如hostname、时区等配置
3.2.3 验证网络配置生效
ping 10.0.100.2本机
ping 同vpc内vm 10.0.100.3
ping www.baidu.com判断互联网连接正常。
以上步骤没问题表示ENS上FortiGW完成基本配置。
3.3 配置IPSEC
IPSEC会有多种配置方式,在当前拓扑中,使用Site2Sit的方式来部署,可以使VM1和VM4实现VPN互通,将两端分别定义为Site1和Site2:
3.3.1 Site1配置
配置如下,按照配置向导逐步执行即可:
点击左侧“VPN- IPsec Tunnels -Create New”,点击IPsec Tunnel:
输入名称、方式(Site to Site):
配置接口,和共享密钥
配置感兴趣流(VPN互通网络:本段业务网段、对端业务网络)
点击create核对信息,确认信息正确后点击Create:
配置FireWall policy策略。在右侧Policy&Objects下Firewall Policy 策略允许内网到ipsec vpn隧道和ipsec vpn隧道到内网的策略(不同版本此处会有不同,较高版本通过VPN配置模板自动下发,参考FortiGate官方手册)
配置业务静态路由。然后在左侧Network-》static routes手动配路由,目的访问对端业务路由通过IPEC VPN隧道进行引流。(高版本通过VPN配置模板自动下发)
接口开Ping用于测试。进行ping测试需要接口地址开Ping,默认是不开Ping,需要双击端口那一列进去,手工打开。
3.3.2 Site2配置
site2的配置如下:
4 测试互通性
配置完毕后即可进行测试,测试时,确认图中的VM1和VM4能够ping通,即证明VPN建立,以下是测试环境数据:
VM4 ping VM1
VM1 ping VM4
5 其他使用场景
在上述介绍中,主要描述了ENS与ENS之间使用FortiGate实现VPN互通的方式,ENS作为FortiGate的基础设施,提供了算力+互联网的基础能力,FortiGate可以在此基础上还可以实现其他的广域网VPN互联方式,比如以下方式:
在这些实现方式中,ENS上安装FortiGate的镜像与前面的介绍一致,只要保证镜像正确,网络正常,那么主要配置就参考ForiGate的官方手册即可。
ENS使用FortiGate,Site2Site方式连接阿里云Region VPC,FortiGate与VPN Gateway直接建立。
ENS使用FortiGate,Site2CPE方式连接客户的Office。
ENS使用FortiGate,Site2Site方式连接客户的IDC: