FortiGate设备 5.6 与 Sonicwall 防火墙建立 Site to Site VPN

  先前写过一篇「Sonicwall FortiGate 防火墙建立 Site to Site VPN」的文章,当时常常遇到要跟 FortiGate 的设备做Site to Site VPN,而我手上的是 Sonicwall,实作的结果有时成功有时失败,后来有次干脆花了些时间,把两个品牌的设定方式做个整理,以方便后续参考。当时在测试及整理资讯时,就有发现 FortiGate 韧体稍微不同,设定的方式就会不太一样,颇为困扰,后来便把可以成功建立连线的两种方式”隧道”给”接口”都记录下来,以便下次遇到改版时,可以试试不同的方法。

  今天又遇到要跟 FortiGate 建立 Site to Site VPN 的需求,型号是 FortiGate 80E,韧体版本为 5.6.4,当听到是新买的防火墙时,心里就冒出”不妙”的念头,等到连线过去看时,果然选项又变了,且这次连介面都变了不少。实际开始设定 VPN 项目时,发现这次似乎已经没有分”隧道”给”接口”,我首先尝试以先前”隧道”的方式去设定,但 VPN 没建立成功,接着改以”接口”建立,却出现奇怪的结果,两边的Site to Site VPN 已建立成功,Sonicwall 这端可以 ping 到 FortiGate 端的网段,但反之则 timeout。检查过 policy 的顺序及 routing 的设定都没有问题,重来一次结果也是一样,让我伤透脑筋。

  之后去查询官方资料,但官方目前针对 5.6 版的韧体似乎只有提供同为 FortiGate 产品的 Site to Site VPN 精灵模式设定教学,不过我注意到在精灵模式完成的最后一步时,画面有显示这次精灵模式共在哪些项目做了几组异动,其中有个名为 “黑洞路由” 的项目引起我的注意,因为一般在设定 Site to Site VPN 时,都是设定 “静态路由”,”黑洞路由” 这项目倒是第一次看到。于是便到 “静态路由” 去查看,在 Interface 的下拉选单中,果真有个”黑洞”的选项,试着新增一笔路由,并丢到”黑洞”这个介面,设完后,原本还 ping 的到 FortiGate 网段的 Sonicwall,现在也 ping 不到了,接着我把刚刚新增的这组路由给停用,然后神奇的事就发生了,Sonicwall 与 FortiGate 两边的网段都可以互相 ping 的到了,但之后我把 VPN 断开再重新连线,FortiGate 又再度无法 ping 到 Sonicwall 的网段,Sonicwall 则一样可以 ping 到 FortiGate 网段。

  接着我又一样的做法再来一次,把”黑洞”路由启用、再停用,两边网段就又可以互通,测试几次确认结果都一样后,便开始研究这个”黑洞”路由的设定。在路由的设定参数中,有”优先”跟”距离”两个值会影响先后顺序,最后试出只要将”黑洞”路由的”优先”数值小于 VPN 路由的”优先”;”距离”数值大于 VPN 路由的”距离”,即可让两边网段正常连线,就算重启 VPN 连线也可以正常互 ping 了。

  后来去查了官方关于”黑洞”的资讯,只查到旧版韧体可以透过指令去设定此”黑洞”路由,但我仍是不了解为何我这样的设法能够解决 FortiGate 网段 ping 不到 Sonicwall 网段的问题,目前先将此成功的设定方式分享出来,后续若有进一步的资讯,再来更新此篇,若各位网友知道为什么的话,也欢迎在下面留言讨论,谢谢。


 
双方环境如下:

Sonicwall NSA 4600 FortiGate设备80E
韧体:6.2.7.1 韧体:5.6.4
Lan:
192.168.1.0/24
192.168.2.0/24

Wan:
203.1.2.3

Lan:
192.168.100.0/24
 

Wan:
203.4.5.6

【Sonicwall設定】
1.建Object
「Network」->「Address Objects」
名称: FortiGate_network
Zone Assignment: VPN
类型: 网络
网络: 192.168.100.0
Netmask: 255.255.255.0
确定

2.設定VPN Tunnel
「VPN」
Enable VPN

–General tab
IPSec Keying Mode: IKE using Preshared Secret.
名称: FortiGate_network
IPSec primary Gateway Name or Address: 203.4.5.6
Shared Secret: 設一組密碼
Local IKE ID: IP Address (保留空白)
Peer IKE ID: IP Address (保留空白)

–Network tab
本地网络:LAN主要子网(192.168.1.0/24、192.168.2.0/24)
目的网络:FortiGate_network(192.168.100.0/24)

–Proposals tab
IKE (Phase1) Proposal
Exchange: Main Mode
DH Group: Group 2
Encryption: 3DES
Authentication: SHA1
Life Time: 28800

IKE (Phase2) Proposal
Protocol: ESP
Encryption: 3DES
Authentication: SHA1
DH Group: Group 2
Life Time: 28800

–Advanced tab
Enable Keep Alive.
确定

[FortiGate设置]
1.設定VPN
「VPN」->「IPsec隧道」
“创建新的”
名称: SonicWall
模板类型: 习惯

–网络
Remote Gateway: Static IP
IP Address: 203.1.2.3
Mode: Main
Authentication Method: Preshared Key
Pre-shared Key: 同上面Sonicwall設定的密碼

–相 1 Proposal
Encryption: 3DES
Authentication: SHA1
DH Group: 2
Keylife: 28800

–相 2 选择
设定第一个网段(192.168.1.0)
名称: SonicWall-192.168.1.0
本地地址: 192.168.100.0/24
远程地址: 192.168.1.0/24

設定第二個網段(192.168.2.0)
名称: SonicWall-192.168.2.0
本地地址: 192.168.100.0/24
远程地址: 192.168.2.0/24

–Advanced
Encryption: 3DES
Authentication: SHA1
不勾選Enable perfect forward secrecy(PFS)
Keylife: 28800

2.建立路由
设置 192.168.1.0 路由
「Network」->「静态路由」
Create New
目的地: 192.168.1.0/24
接口: SonicWall
管理距离: 10
-高级选项
优先: 3 (要大于 Blackhole 预设的 0)
确定

设置 192.168.2.0 路由
「Network」->「静态路由」
Create New
目的地: 192.168.2.0/24
接口: SonicWall
管理距离: 10
-高级选项
优先: 3 (要大于 Blackhole 预设的 0)
确定

设置 192.168.1.0 黑洞
「Network」->「静态路由」
Create New
目的地: 192.168.1.0/24
接口: 黑洞
管理距离: 12 (要大于一般路由预设的 10)
确定

设置 192.168.2.0 黑洞
「Network」->「静态路由」
Create New
目的地: 192.168.2.0/24
接口: 黑洞
管理距离: 12 (要大于一般路由预设的 10)
确定

3.設定防火牆規則
“政策 & 对象」 - >「IPv4的政策」
Create New
名称: Forti2Sonicwall
Source Interface: Port 1(192.168.100.0 所在的port)
出接口: SonicWall
资源: FortiGate_network
目的地: SonicWall_network
Schedule: always
服务: 所有
Action: Accept
确定

Create New
名称: Sonicwall2Forti
Source Interface: SonicWall
出接口: Port 1(192.168.100.0 所在的port)
资源: SonicWall_network
目的地: FortiGate_network
Schedule: always
服务: 所有
Action: Accept
确定

【參考連結】

发表评论

请注意:: 评论审核已启用,可能会耽误您的评论. 有没有必要重新提交您的评论.