AWS云上Fortigate -VM配置VPN (自动保存的)
通过云上第三方的Fortigate-VM配置IPSEC-VPN
1. 背景说明
IDC的资源(网段:172.16.176.0/24)需要跟AWS云上资源(网段10.0.0.0/16)进行互访,线下机房使用的Fortigate200D的防火墙,线上采用Fortigate-VM来配置site-site的VPN,保证线下的IDC资源和云上资源互联互通。拓扑如下
2. 前置资源配置
2.1 新建VPC
Ø 登陆AWS控制台https://cn-northwest-1.console.amazonaws.cn/
Ø 点击Servcie,输入VPC,点击登陆VPC
Ø 进入VPC,点击您的VPC,点击创建VPC
Ø 选择VPC等,名称:test 默认IPv4 地址块 10.0.0.0/16(可以根据要求选择其它地址段),其它默认即可,点击创建VPC
Ø 创建完成后,会生成4个网段,2个Public subnet 和2个Private subnet 如下图所示
子网名称 | 子网ID | IPv4 地址段 |
my-vpc-test-subnet-private2-cn-northwest-1b | subnet-038a282254131ce2f | 10.0.144.0/20 |
my-vpc-test-subnet-public1-cn-northwest-1a | subnet-0d6bde3ae8187445f | 10.0.0.0/20 |
my-vpc-test-subnet-private1-cn-northwest-1a | subnet-0c60c414d56283536 | 10.0.128.0/20 |
my-vpc-test-subnet-public2-cn-northwest-1b | subnet-00e706fe2cb12851a | 10.0.16.0/20 |
Ø 默认生成的VPC自带IGW的互联网网关,2个public属性的网段的路由表中默认自带IGW的路由信息,如下
2个Private属性的网段的路由表.默认是不带IGW的网关路由,此次试验,需要测试每个网段里面的EC2的连通性,在2个Private网段中添加IGW的网关路由,
编辑路由>>第一个目标选择0.0.0.0/0,第2个目标互联网网关>>保存修改
2.2 部署fortigateVM
Ø 登陆EC2的界面,选择启动新的实例
Ø 名称-自定义(实验为FW-VPN),在云市场中,选择Fortigate的VM的AMI,
Ø 实例类型,选择地带默认,密钥对选择已有密钥对,不能留空
Ø 网络配置,选择编辑,
VPC,选择自建VPC
子网选择 my-vpc-test-subnet-public1-cn-northwest-1a,禁用自动分配公有IP
安全组选择现有in-out安全组,因为设置的防火墙,后期安全控制可以在防火墙上面直接管控,所有选择in-out的安全组是全部流量都放行的安全组
点击>>高级网络配置>>添加网络接口,在网络接口2上,子网选择
my-vpc-test-subnet-private1-cn-northwest-1a,安全组选择IN-OUT,其它默认即可
配置存储,讲gp2改为gp3
Ø 更改完成,启动配置
Ø 部署完成后,点击FW-VPN的实例,选择联网
Ø 查询网络接口的ID和对应的IP地址,并进行记录
接口ID | 对应IP |
eni-07d50fbd249d05278 | 10.0.138.104 |
eni-0f5bbe33c5444955c | 10.0.6.241 |
Ø 分配一个EIP地址(实验为:161.189.177.7:),并将其挂载到FW-VPN对应的eni-0f5bbe33c5444955c接口上
Ø 中国区的80和443端口不能访问,这个时候需要通过ssh 161.189.177.7: 22用户名:admin 登陆FW-VPN 的命令行界面给该端口号为19443
config system global
set admin-sport 19443
end____保存
Ø 到此 fortigate_VM部署完成,通过web登陆
Ø 关闭FW-VPN实例的 更改源和目标检查,建议停止后,重启下实例
3. 部署site-site VPN
3.1 site-site VPN实验拓扑
IDC的环境已经提前布置完成,为方便测试,在各个子网中都添加了测试EC2,这个实验环境的网络拓扑如下:
子网名称 | 子网ID | IPv4 地址段 |
my-vpc-test-subnet-private2-cn-northwest-1b | subnet-038a282254131ce2f | 10.0.144.0/20 |
my-vpc-test-subnet-public1-cn-northwest-1a | subnet-0d6bde3ae8187445f | 10.0.0.0/20 |
my-vpc-test-subnet-private1-cn-northwest-1a | subnet-0c60c414d56283536 | 10.0.128.0/20 |
my-vpc-test-subnet-public2-cn-northwest-1b | subnet-00e706fe2cb12851a | 10.0.16.0/20 |
FW-VPN实例网口配置如下
接口ID | 对应IP | 端口 | 公网IP |
eni-07d50fbd249d05278 | 10.0.138.104 | Port2(IN) | NA |
eni-0f5bbe33c5444955c | 10.0.6.241 | Port1(WAN ) | 161.189.177.7 |
3.2 配置远端的IPSEC-VPN
Ø VPN建立:用户名 :自定义选择 远端设备类型 FortiGate NAT配置: 站点之间没有NAT
Ø 认证:IP地址:161.189.177.7 流出接口 WAN1 认证方法:预共享密钥 预共享密钥:自定义,2端一致
Ø 策略&路由 本地接口 lacp 本地子网 172.16.176.0/24 远端子网: 10.0.0.0/16,点击完成
3.3 配置AWS云上IPSEC-VPN
Ø VPN 建立 模板类型:站到站 NAT配置:这个站点在NAT后面 远程设备类型:FortiGate
Ø 认证:远程IP地址:46.8.176.29 流出接口 Port1 , 证方法:预共享密钥 预共享密钥:自定义,2端一致
Ø 策略&路由:本地接口:port 2 本地子网:10.0.0.0/16,远端子网:172.16.176.0/24,Internet访问:无
Ø 回顾配置,确认,点击完成
Ø 2遍配置完成后,看下2端VPN的阶段1和阶段2是否正常,如果不正常,根据日志进行阶段1和阶段2的检查
3.4 配置云上的互联互通
3.4.1 配置Public网络的路由
在VPC中点击路由表,在VPC的路由表选择Public的路由,默认Public的网段都关联在Public的路由表中
添加明细路由,将学习到172.16.176.0/24的地址指向FW—VPN实例的内网接口
eni-07d50fbd249d05278
3.4.2 配置Private网络的路由
在Private的路由表中也添加明细路由,将学习到172.16.176.0/24的地址指向FW—VPN实例的内网接口eni-07d50fbd249d05278
3.4.3 配置fortigate-VM的路由
在fortigate-VM的接口上,指定了port1为WAN,port2为IN,已Port2为端口指定路由
子网名称 | 子网ID | IPv4 地址段 | 指向Port2网关 |
my-vpc-test-subnet-private2-cn-northwest-1b | subnet-038a282254131ce2f | 10.0.144.0/20 | 10.0.128.1 |
my-vpc-test-subnet-public1-cn-northwest-1a | subnet-0d6bde3ae8187445f | 10.0.0.0/20 | Port1的接口段,不做路由指向 |
my-vpc-test-subnet-private1-cn-northwest-1a | subnet-0c60c414d56283536 | 10.0.128.0/20 | |
my-vpc-test-subnet-public2-cn-northwest-1b | subnet-00e706fe2cb12851a | 10.0.16.0/20 | 10.0.128.1 |
3.4.4 测试互联互通
在AWS云上的测试环境 IP: 10.0.159.83 (private2)测试,ping 172.16.176.111
在AWS云上测试环境:IP:10.0.18.111(public2)测试,,ping 172.16.176.111
在local本地IP 172.16.176.111,ping private2和 public2
4. 部署建议
4.1 使用traceroute进行调试
按照测试拓扑,可以通过traceroute去测试路由跳数,基本为3跳,且在云上的路由进出不是同一条路由如下:
从本地向AWS云上
从AWS云上到本地 (其中第二跳为线下FT200D的MGT地址)
4.2 使用debug进行调试
FGTVM-103#diagnose debug application ike-1
FGTVM-#diagnose debug enable
看下建立过程