Setup Fortigate Site to Site IPEC VPN
快速設定Fortigate Site to Site IPEC VPN
先簡單說明網路測試環境,否則後續圖解一定會看到眼花:
Z1 Network – 192.168.123.0/24
有Fortigate 60 設備(FortiOS v4.0.1 beta)
WAN IP: 123.123.123.123
Lan IP:192.168.123.254
Z2 Network – 192.168.1.0/24
有Fortigate 60B 設備(FortiOS v3.0 MR7)
WAN IP: domain.dyndns.org(外部採PPPoE 無固定IP,故申請免費的dyndns.org 服務以達成兩端即時連線)
Lan IP:192.168.1.252
理所當然,我們先從Z1 區的FG60 下手設定:
1) 設定FG60 的IPSEC Key。到VPN -> IPSec,選擇「Create Phase 1」。
為方便未來清楚設定,建議參考下圖命名為「Z1toZ2_Tunnel」,進階的部分用預設即可。但幾個地方要注意:
a. 由於Z2 區的Fortiagte 對外是使用浮動式IP,所以Remote Gateway 請選擇「Dymamic DNS」模式,「Dynamic DNS」欄位則輸入Z2 對外的DDNS 名稱。
b. 「Local Interface」是個很容易讓人誤會的設定,請選擇Fortigate 上對外連線VPN 的介面。因此範例是選擇「wan1」。
c. 「Pre-shared Key」的密碼設定至少為三個字元以上。範例是設定「123456」,到時候另一端的設備也需要設同一組密碼作溝通。
建立完「IPSEC Phase 1」,接著新增「Phase 2」
參考下圖將「Phase 2」命名為「Z1toZ2_phase2」,並記得選擇前面phase 1 所設定「Z1toZ2_Tunnel」;進階的部分用預設即可。(就說了是快速設定啊 )
Z1 端IPSEC 的設定完成如圖。
2) 到Firewall -> Address 新增兩組IP 網段。
請參考下圖,分別新增Z1(192.168.123.0/255.255.255.0)及Z2(192.168.1.0/255.255.255.0)的IP。
3) 到Firewall -> Policy 新增Internal -> Wan1 的Policy。
由於是Z1 到Z2 的設定,Source Address 當然要選擇Z1 的IP Address,Destination Address 則選擇Z2 的IP Address。要比較注意的是,Action 設定請記得選擇「IPSEC」,而VPN Tunnel 則選擇先前建立的「Z1toZ2_Tunnel」。
如果建立Policy 後,順序跟下圖一樣是後於「all to all」,請將調整於其之前。
如果以上步驟都確實完成,那麼Z1 端就算收工了,等於做完一半啦!
鏡頭轉到Z2 的FG60B 設定。以下步驟其實跟Z1 的設定幾乎一樣。
1) 到VPN -> IPSEC 新增FG60B 的IPSEC Key。一樣要先新增Phase 1,命名為「Z2toZ1_Tunnel」。而要注意的事項:
a. Z1 對外是使用固定IP,所以Remote Gateway 請選擇「Statics IP Address」模式,「IP Address」欄位則輸入Z1 對外的IP「123.123.123.123」。
b. 「Local Interface」請選擇擇「wan1」介面。
c. 「Pre-shared Key」的密碼必須跟Z1 端的IPSEC 設定一樣,所以請輸入「123456」。
新增Phase 2。不多講,看圖說故事。
完成Z2 端的IPSEC 設定。
2) 到Firewall -> address 新增兩組IP 網段。這部分跟Z1 端一樣。
3) 到Firewall -> Address 新增Internal -> Wan1 的Policy。
現在是Z2 到Z1 的設定,Source Address 請務必選擇Z2 的IP Address,Destination Address 則選擇Z1 的IP Address,不要搞混現在在哪裡設定啊。Action 設定別忘了選擇「IPSEC」,VPN Tunnel 則選擇「Z2toZ1_Tunnel」。
大功告成!
當然,照例要來個有圖有真相。從Z1 端的電腦直接Ping Z2 端的FG60B,會看到已經可以直接連接。不過,會發現第一次Ping 的時候似乎停頓1至1秒半的時間。
這是因為預設的IPEC VPN 不會主動建立連線,只有在Fortigate 發現內部有需要時才會開始連線(這算節能省碳嗎?),甚至在雙方達到一定時間且沒有流量時還會自動中斷VPN。
要解決這個問題,就是到IPSEC 的phase 2 設定找到進階選項,然後勾選「Autokey Keep Alive」。另外,從這裡可以發現「keylife」預設是30分鐘會換一次Key,如果又沒有勾選「Autokey Keep Alive」且沒有流量,設備就會因此停止VPN 連線。高興的話,也可以改一個小時甚至一天,就看你的安全考量;畢竟是透過Internet 傳輸IPSEC VPN,「keylife」時間越久就越有可能遭到有心駭客去破解。
認真研究起來,上面的設定其實不很難,難的是Fortinet 原廠提供的教學文件 – IPSec VPN User Guide 並沒有提供截圖,所以在閱讀上會有些困難。不過,一般企業會想到的應用幾乎都在文件裡出現,像是Redundant VPN、Hub and spoke 架構等等。如果資源夠的話,我會建議印出來閱讀,會比較容易從文件中抓出重點。
至於Site to Site IPSEC VPN 是否僅限定Fortigate 設備,其實不然!(假如連這都要綁標就太機車了…)原廠Knowledge Center 還提供了像是跟ZyXEL ZyWALL、SonicWall、Cisco PIX 等大廠設備,甚至連Microsoft ISA Server 都有的連線文件(詳情可參考Fortinet Knowledge Center 的 IPSec VPN interoperability 頁面),有需要的人可以上網參考看看喔!