第12章 VPN¶
NG-UTM 可以用 VPN 方式建立安全的網路連接,以整合企業的各個遠地網路連線與全球外勤人員遠地端電腦,提供公司企業與遠端使用者一個安全便利的網路加密方式,讓企業在網際網路傳遞資料時,得到最佳的效能及保密效果。NG-UTM 支援 4 種 VPN 協定,分別是 IPSec、PPTP、L2TP 跟 SSL VPN,每種協定的屬性跟定位不太一樣,IPSec 強調在 Tunnel 部分,PPTP、L2TP 跟 SSL VPN 最主要是讓外部的使用者利用網際網路安全地連入內部網路。廣義來說,在網路設定中 IP Tunnel 也是一種 VPN 連線模式,也可以選用 IPSec 的加密模式,但因為它也是屬於 Tunnel 性質,所以把它歸類到虛擬介面中。VPN 種類說明如下:1、 IPSec VPN Tunnel :系統管理者可以利用 IPSec 協定,建立 Site to Site 的 VPN 通道,通道 2 端的溝通資料,都會以 DES、3DES、AES 的加密方式,讓其他人就算攔截通道的封包也無法順利解出其中傳遞的內容。2、 PPTP 伺服器、L2TP :管理者可於此建立 PPTP 或是 L2TP 的撥接帳號,讓外部的使用者可以使用 NG-UTM 內部的資源。3、 SSL VPN 伺服器 :管理者可於此建立 SSL VPN 的撥接帳號,讓外部的使用者可以使用 NG-UTM 內部的資源。建立虛擬私有網路驗證 Virtual Private Network (VPN),需先在 IPSec VPN 中建立 Tunnel,或是建立在 PPTP/L2TP/SSLVPN 伺服器的帳號。而如果要管理這些外點,IPSec VPN 在管制條例中的 4-2、IPSec 管制 建立管理規則,PPTP、L2TP 跟 SSL VPN 則在管制條例中的 4-1、管制規則 實現。
12-1、IPSec Tunnel¶
Tip
影片參考|眾至NU系列 UTM教學 IPSec.VPN說明與範例
12-1-1、VPN 通道¶
• VPN 通道列表建立完成的 IPSec VPN Tunnel 會列表顯示,如下圖:【本地端介面】:目前 IPSec VPN 使用的實體介面。【切換】:這一條 VPN 通道是主要的還是備援。• 建立一條 IPSec VPN 通道建立一條 IPsec VPN Tunnel 需要 2 端的設定都一致才有辦法連線成功,每一個連線需要設定的資訊說明如下:在 IPSec VPN 通道列表下方點選 :【啟動】:是否要啟用這一條 IPSec VPN Tunnel。【VPN 通道名稱】:可以是任何中英文字,方便管理者辨識。【本地 IP 位址】:哪一個 IP 位址或網域要接受 IPSec VPN Tunnel 的封包,通常指的是外部網路的 IP 位址。【遠端 IP 位址】:遠端 IPSec VPN Tunnel 的 IP 位址或網域名稱。如果不知道遠端的這些資訊,就使用動態 IP 位址,而當有多條 IPSec VPN 通道的外部 IP 都是動態時,要注意它們的 Preshare Key 都要一樣。【啟用備援】:是否要啟動備援服務,當這一條 IPSec VPN Tunnel 斷線時,系統會自動啟用備援的通道。【斷線多久切換】:當主要的 IPSec VPN Tunnel 斷線多久後切換到備援線路,預設值是 5 分鐘。【備援本地 IP 位址】:哪一個 WAN IP 位址或是網域要當備援線路,接受 IPSec VPN Tunnel 的封包。【備援遠端 IP 位址】:備援線路的遠端 IPSec VPN Tunnel 的 IP 位址或網域名稱。如果不知道遠端的這些資訊,就使用動態 IP 位址。【自訂備援 Preshare Key】:備援線路的加密 Preshare Key。備援線路是重新建立一條 IPSec 通道取代原來的,所以這個 Key 也要跟遠端設備設定一樣。【多通道模式】:把流量分配到 2 條以上的 IPSec VPN 通道中,達到類似線路負載平衡的機制。以下分別說明關閉與開啟的設定模式。· 【多通道模式】:關閉。表示為 IPSec VPN 互連的網段。· 【多通道模式】:開啟。• IPSec 通道加密資訊共有 2 個區塊,一個是 IKE 設定 (Phase 1),另一個是 IPSec 設定 (Phase 2)。1、IKE 設定 (Phase 1)【IKE】:可以選 V1 或是 V2,IKE V2 是新的協議,設定前要注意,2 端的 IKE 要一致。【連線模式】:可以選擇主要模式 (main mode) 或野蠻模式 (aggressive mode),通常是選擇主要模式。使用野蠻模式下,所有的 VPN 通道都會共用一組 Preshare Key。【Preshare Key】:IPSec VPN Tunnel 建立雙方連線時,用來進行 IPSec 加密用的金鑰。【ISAKMP 演算法】:「IP Security Association Key Management Protocol (ISAKMP)」就是提供一種加密邏輯供兩個設備建立安全性關聯 (SA)。安全性關聯 (Security Association 縮寫為 SA) 對兩台電腦之間進行連線編碼,指定使用哪些演算法和什麼樣的金鑰長度或實際加密金鑰。SA 不止一個連線方式:從兩台電腦 ISAKMP SA 作為起點,必須指定使用何種加密演算法 (DES、triple DES、AES)、使用何種封包驗證 MD5 或是 SHA1。· DES/3DES:3DES 提供比 DES (加密金鑰爲 56 位元),更加安全的三重資料加密標準 (Triple Data Encryption Standard,3DES) 安全加密金鑰方法,使用的加密金鑰爲 168 位元。· AES:標準比 DES 的加密標準更加嚴謹的高階加密模式,DES 加密金鑰長度為 56 位元,AES 加密金鑰長度則高達 128 位元、192 位元、以及 256 位元,現在的 INTEL CPU 大都支援 AES 硬體加解密,所以在同等 CPU 下,AES 的速度會比 3DES 更快。· MD5:一種單向字串雜湊演算,將你給予任何長度字串,使用 MD5 雜湊演算法計算出一個長度為 128 位元的演算方式。· SHA:是用於產生訊息摘要或雜湊的演算法,原有的 SHA 演算法已被改良式的 SHA1 演算法取代,可以計算出 160 位元的演算。【本地端 ID】:若開啟「多通道模式」則不會顯示此輸入 ID 的欄位。預設會自動帶本地端的 IP 位址當作 ID,管理者也可以輸入一組域名當作本地端 ID。系統會自動在前端加入「@」,送到遠端,例如:@1.1.1.1 或是 @ghi.com。設定時要注意,2 端的資料一定要互相對稱。【遠端 ID】:若開啟「多通道模式」則不會顯示此輸入 ID 的欄位。系統預設認為遠端的 ID 是連線的 IP 位址。管理者輸入一組域名當作遠端 ID,系統會自動在前端去除「@」,認為是遠端送來本地端的 ID,例如:@2.2.2.2 或 @def.com。設定時要注意,2 端的資料一定要互相對稱。【IKE SA 生存時間】:根據 ISAKMP 演算法計算出的 SA 之有效時間,超過此設定時間,系統會自動產生另一個 SA 取代前面的。預設是 3 小時,設定範圍為 1~24 小時。2、IPSec 設定 (Phase 2)【IPSec 演算法】:指定使用何種加密演算法 (DES、triple DES、AES)、使用何種封包驗證 MD5 或是 SHA1。【Perfect Forward Secrecy (PFS)】:完全前向保密,啟用後系統具有前向保密性,可以保證在私鑰泄露時歷史通訊的安全(即使系統遭到主動攻擊也是如此)。【IPSec SA 生存時間】:根據 IPSec 演算法計算出的 SA 之有效時間,超過此設定時間,系統會自動產生另一個 SA 取代前面的。預設是 3 小時,設定範圍為 1~24 小時。• IPSec 其他設定【Dead Peer Detection】:DPD 是一種自動偵測 VPN 斷線機制的標準協定,可自動判別 VPN 另一方的 IPSec 通道是否正常運作中。判斷 IPSec 通道有問題時,針對這條 VPN 通道可以執行 Hold/Clear/Restart,Hold 表示繼續等待,Clear 代表把相關的資訊清除掉等待重新連線,Restart 則是直接將 VPN 重新連線。【關閉網路芳鄰】:建立 IPSec VPN 通道後可以讓 2 方的網段利用網路芳鄰協定查詢電腦名稱,預設為啟用,表示允許網路芳鄰的封包通過 VPN 通道到另外一端。範例:兩台 NG-UTM 建立的 IPSec VPN 連線,存取特定網段的資源。甲公司:WAN IP 為 61.11.11.11,LAN IP 為192.168.188.0/24乙公司:WAN IP 為 211.22.22.22,LAN IP 為192.168.200.0/24此情況下的 IPSec VPN Tunnel 連線環境架構圖:1、甲公司的設定 :進入甲公司的 NG-UTM IPSec VPN 通道設定,系統預設值的部分就不列出。【啟動】:選擇啟用。【VPN 通道名稱】:到乙公司連線。【本地 IP 位址】:61.11.11.11。【遠端 IP 位址】:211.22.22.22。【本地端網路】:192.168.188.0/24。【遠端網路】:192.168.200.0/24。【啟用備援】:不要啟動備援服務。IPSec Phase 1 設定【連線模式】:主要模式 (main mode)。【Preshare Key】:123456789。【ISAKMP 演算法】:AES / SHA-1,DH Group2。IPSec Phase 2 設定【IPSec 演算法】:AES / SHA-1,DH Group2。IPSec 其他設定【Dead Peer Detection】:Restart。2、乙公司的設定 :進入乙公司的 NG-UTM IPSec VPN 通道設定,系統預設值的部分就不列出。【啟動】:選擇啟用。【VPN 通道名稱】:到甲公司連線。【本地 IP 位址】:211.22.22.22。【遠端 IP 位址】:61.11.11.11。【本地端網路】:192.168.200.0/24。【遠端網路】:192.168.188.0/24。【啟用備援】:不要啟動備援服務。IPSec Phase 1 設定【連線模式】:主要模式 (main mode)。【Preshare Key】:123456789。【ISAKMP 演算法】:AES / SHA-1,DH Group2。IPSec Phase 2 設定【IPSec 演算法】:AES / SHA-1,DH Group2。IPSec 其他設定【Dead Peer Detection】:Restart。➤ 2 端的差異部分如紅字所標示,必須確認清楚並輸入正確,如果網段或外部 IP 位址設定錯誤,將會導致 VPN 連線無法成功。建立一條 IPsec VPN Tunnel 的步驟相當繁瑣,要對應 2 端的 ID、使用網段等,當 IPSec VPN 通道數量多,往往不容易辨識而增加弄錯機會,尤其是遠端 IP 多是動態 IP 位址下,IPSec VPN 的穩定度備受考驗。ShareTech 提出 Auto VPN 架構,是建構在 IPSec VPN 的基礎上,簡化設定邏輯,讓 VPN 部署時方便又快速,它的基本組成有 2 個。Auto VPN Server: 設定 IPSec VPN 的條件,並產生一個辨識碼給 Client 端使用。Auto VPN Client: 拿到 Auto VPN Server 端給的辨識碼,輸入 Auto VPN 的 IP 位址,就完成 Client 的設定。
12-1-2、Auto VPN Server¶
在 Auto VPN Server 建立一條新通道時,除了【辨識碼】外,其他都跟傳統的 IPSec VPN 通道建立的方式一樣。在列表下方點選 :【辨識碼】:每建一個 VPN 通道,系統會自動產生一組獨一無二的辨識碼,將這個辨識碼複製後傳給 Auto VPN Client 端。
12-1-3、Auto VPN Client¶
當獲得 Auto VPN Server 的【辨識碼】後,就可以到遠端的 Auto VPN Client 端設定,在 Client 端的設定就沒有如 IPSec VPN 的繁雜。【啟動】:是否啟用這條 VPN 設定。【VPN 通道名稱】:方便辨識的名稱。【Server IP】:Auto VPN 的外部 IP 位址。【辨識碼】:輸入從 Auto VPN Server 得到的辨識碼。【本地 IP 位址】:要使用那一個 IP 建立 VPN 通道。在 Auto VPN Client 建立完成的 VPN 通道會顯示於列表如下:
12-2、PPTP Server¶
PPTP 協定在每一個作業系統如:Windows、Linux 都有現成的撥接軟體可以使用。輸入管理者預先給的帳號密碼後,就可以藉由 PPTP VPN 連線,透過網際網路進入 NG-UTM 內部。欲在 NG-UTM 中使用 PPTP 功能,步驟如下:1. 啟用 PPTP 伺服器。2. 建立帳號。3. 到管制條例的管制規則中建立 PPTP 用戶可以存取的網路資源。Tip
影片參考|眾至NU系列 UTM教學 PPTP介紹與Server設定、PPTP在Windows與Android設定
12-2-1、PPTP 伺服器¶
建立 PPTP 伺服器的第一個動作就是啟用 PPTP 伺服器,讓遠端用戶可以利用 PPTP 的撥接軟體跟 NG-UTM 的 PPTP 伺服器建立加密的 VPN 連線,以下為其設定步驟:【啟動】:是否啟用 PPTP 伺服器。【啟動壓縮加密】:在 PPTP 通道中啟用壓縮。【分配的 IP 位址範圍】:要分配給撥進來用戶端分配的 IP 位址及範圍。【DNS1/2】:分配給遠端用戶端的 DNS 伺服器位址。【WINS1/2】:分配給遠端用戶端的 WINS 伺服器位址,WINS 通常用在尋找網路芳鄰的功能。
12-2-2、新增帳號¶
在【新增帳號】頁籤中建立用戶端的撥入帳號。【啟動】:是否要啟用這個帳號。【帳號】:PPTP 用戶端撥入使用的帳號。【密碼】:PPTP 用戶端撥入使用的密碼。【用戶端的 IP 位址】:用戶端撥入 PPTP 後如何取得使用的 IP 位址,除了設定【使用配給的 IP 位址】,由 PPTP 伺服器按照設定的範圍分配外,管理者也可以選擇【自行輸入 IP 位址】針對特定的帳號,給予特定的 IP 位址或是範圍。
12-2-3、PPTP 帳號列表¶
建立完成的 PPTP 帳號會在【PPTP 帳號列表】頁籤中顯示,管理者可以在此控制每一個 PPTP 帳號的啟用與關閉。【帳號】:PPTP 用戶端撥入使用的帳號。【時間】:PPTP 用戶端撥入開始的時間。【來源 IP】:PPTP 用戶端原本的 IP 位址。【本機配發 IP】: PPTP 伺服器在這次連線分配給用戶端的 IP。若使用【自行輸入 IP 位址】則會配發固定的 IP。【事件】:PPTP 用戶端撥入開始或是結束事件,結束的事件系統會自動計算總使用的時間,單位是「小時:分」,低於 1 分鐘的時間會被記錄為 00:00。
12-3、SSL VPN Server¶
SSL VPN 是一種具有安全加密保護的虛擬私人網路技術,讓使用者在外地使用電腦時,就像是在區域網路內使用電腦,可以使用任何只有在區域網路內才能使用的資源,如 ERP、進銷存或是限定來源 IP 位址的圖書查詢系統,又因為將資料加密,所以在網際網路上無法解析傳輸的內容,確保雙方傳輸資料的安全性。SSL VPN 具有管制功能,對於遠端用戶而言,管制有 2 個方向,一個是進入內部網路,另一個是透過 VPN Server 上網際網路,這 2 個管制方向都可以管制遠端用戶使用的頻寬、通訊服務及時間。使用 SSL VPN 時,需要從 VPN 伺服器端下載軟體及憑證,SSL VPN 用戶端軟體使用綠色軟體技術,不需要任何安裝動作,直接執行就可運行,所以使用者可以將軟體跟憑證放在任何移動的儲存設備,如 USB 等,然後在任何電腦設備上執行。用戶端可以登入 SSL VPN 伺服器端取得 SSL VPN 用戶端軟體及憑證,因 NG-UTM 的用戶端軟體跟憑證綁定在一起,用戶下載之後,解壓縮後就可以直接執行。預設的網址是 https://(網路介面 IP 位址或網域):(系統設定 > 基本設定 > 管理界面存取設定 > HTTPS Port)/sslvpn.php 。範例:介面的管理 IP 位址及 Port 是 https://211.2.2.2:8443,則取得的網址為:https://211.2.2.2:8443/sslvpn.php。關於用戶端使用說明可前往 SSL VPN 用戶端使用 。Tip
影片參考|眾至NU系列 UTM教學 SSL.VPN主機與POP3說明與範例、SSL.VPN使用者端安裝檔
12-3-1、SSL VPN 設定¶
SSL VPN 預設為關閉,點選【修改伺服器設定值】才會將設定畫面開啟。設定完成後,系統會產生 SSL VPN 使用的憑證,使用者可利用這個憑證登入 SSL VPN Server。日後若有改變伺服器的任何設定資訊,憑證都需要重新下載,所以首次操作時要注意,否則就會造成使用者需頻繁更換憑證。• SSL VPN 伺服器設定【服務狀態】:啟動或是關閉。【本機使用的介面】:選擇提供 SSL VPN 服務的介面跟 IP 位址,點選 查看可以選擇的介面跟 IP 位址。這裡的介面跟 IP 位址可以複選,例如:ZONE 1 的 IP 位址 11.12.13.14 跟 ZONE 2 的 IP 位址 23.24.25.26 都提供 SSL VPN 撥入的服務。【Client 連線設定】:(待補)【本機使用通訊埠】:哪幾個 PORT 號讓 SSL VPN 的用戶端撥入,管理者可以設定一個 PORT 或是一個範圍的 PORT。例如:387-387,代表只有 387 接受 SSL VPN,如果設定 387-400,代表這個範圍的 PORT 都接受 SSL VPN 撥入。用戶端跟伺服器端溝通的埠號,一定要跟 WAN 的管理介面使用的 Port 錯開。【同時最大連線數】:最多可以讓幾個人同時使用 SSL VPN,預設值是 20。【VPN IP 範圍】:SSL VPN 用戶端取得的 IP 位址範圍, VPN IP 範圍不可與內部的網段相同。【DNS Server】:SSL VPN 用戶連線成功後配發的 DNS 伺服器。【WINS Server】:SSL VPN 用戶連線成功後配發的 WINS 伺服器。• Client 路由設定當 SSL VPN 用戶撥上來之後,NG-UTM 要分配哪些內部路由讓使用者使用,也就是說 SSL VPN 撥接成功之後,並不是可以任意到內部任何一個網段。【Push Route】:點選【變更】會開啟新視窗讓管理者選擇。• 憑證設定SSL VPN 用戶端使用的憑證是由 SSL Server 簽發,伺服器要簽發憑證時需要填入一些資訊,憑證機制再利用這些資訊製作憑證給使用者。每個欄位都必須輸入最少一個文字,不可為空白,如果更改這個欄位的任何一個字元,每個使用者的憑證都需要重新下載。
12-3-2、Client SSL VPN 列表¶
新增一個 SSL VPN 用戶前,要 先於上網認證增加一個認證群組,並選擇群組成員 ,請參考上網認證中 5-9-4、使用者群組 說明。
新增認證群組¶
在 Client SSL VPN 列表下方點選 前往新增認證群組:【註解】:任何可以描述此 SSL VPN 用戶端的文字,例如:SSLVPN-TEST。【認證群組】:顯示已在上網認證中新增且尚未被套用過的群組。【連線成功時顯示訊息之網址】:當 SSL VPN 撥接成功後,自動轉向哪一個網頁。若沒有設定,則依使用者瀏覽器預設的網址。• Client SSL VPN 列表:Client SSL VPN 列表會把所有的 SSL 用戶端列出來。每當管理者更改憑證伺服器中的任何文字,對於已經建立的 SSL VPN 用戶,所有的憑證都需要重新產生,只要按下【重新取得全部憑證】的按鈕,NG-UTM 就會將所有的憑證更新一次,使用者重新下載後就可以使用。【使用者帳號】:此群組成員帳號。【註銷憑證】:取消該使用者的憑證,使用者就無法撥入,如果之後要讓使用者再次使用,則需要重新取得憑證。【重新取得憑證】:若將該使用者的憑證取消或是憑證的內容重新設定,使用者就無法撥入,此時則需要重新取得憑證。【下載】:下載用戶端軟體跟憑證。【暫停使用】: 憑證暫時停用,此使用者的憑證依然有效,只是不讓他具有撥入權限,恢復使用時不需要重新取得憑證使用者就可以使用。
SSL VPN 用戶端使用¶
使用者可自行登入 NG-UTM 的 SSL VPN 用戶端軟體下載 SSL VPN 軟體,下載的網址為 https://(網路介面 IP 位址或網域):(系統設定 > 基本設定 > 管理界面存取設定 > HTTPS Port)/sslvpn.php 。1. 用 https://SSL SERVER /sslvpn.php 下載檔案。2. 下載 SSL VPN 的用戶端及憑證檔案,並另存新檔,下載完畢可以將檔案解壓縮在任何地方。3. 在解壓縮的地方執行 SSL VPN 的用戶端軟體,openvpn-gui-1.0.3-en.exe
。5. 選擇 EDIT Config ,使用者可以選擇語系、更改 SSL VPN Server 或埠號,也可以選擇要不要從遠端上網際網路,如果沒有勾選從遠端上網,則除了遠端的 LAN、DMZ 區段的 IP 會走 SSL VPN 通道外,其他都會走本地端。6. SSL VPN 連線,輸入管理者給的帳號及密碼,這組帳號密碼跟剛剛下載軟體及憑證的帳號密碼是一樣的。7. SSL VPN 連線後,原來的小圖標會由紅色轉成綠色,代表 SSL VPN 已經完成連線。
12-3-3、SSL VPN 記錄¶
12-4、L2TP¶
NG-UTM 支援 L2TP VPN,L2TP 提供 IPSec VPN 的 Preshare key 加密機制,提供比 PPTP 更強的加密保護。Tip
影片參考|眾至NU系列 UTM教學 L2TP介紹與Server設定、L2TP在Windows.Android.iOS設定說明
12-4-1、帳號列表¶
建立完成的 L2TP 帳號會顯示於列表,管理者可以於此查看帳號狀態並控制每個帳號的啟用與關閉,也可以執行編輯/刪除/查看使用紀錄。點選帳號列表下方的 即可進入新增帳號:【啟動】:是否啟用這個帳號。【帳號】:L2TP 撥入時需要的帳號。【密碼】:L2TP 撥入時需要的密碼。【用戶端的 IP 位址】:有 2 種選項,使用配給的 IP 位址或是自行輸入 IP 位址。
12-4-2、基本設定¶
L2TP 是建立在IPSec 加密技術的基礎之上,所以要事先設定 Preshare Key 跟要分配的 IP 位址範圍。【啟動】:是否啟用 L2TP 伺服器。【分配的 IP 位址範圍】:要分配給撥進來用戶端的 IP 位址及範圍。【第一個 DNS 伺服器】:分配給遠端用戶端的 DNS 伺服器位址。【第二個 DNS 伺服器】:分配給遠端用戶端的 DNS 伺服器位址。【介面 IP】:哪個外部介面 IP 要作為 L2TP 撥進來的 IP 位址。點選 後,系統會列出所有可以提供的外部介面,勾選後就可以提供給 L2TP VPN 的用戶撥入,可勾選多個。【Preshare Key】:在 L2TP 上使用的加密密碼。
12-5、SD-WAN¶
NG-UTM 支援 SD-WAN 功能,SD-WAN 可以把出口線路或是 VPN 通道的任意組合綁定成一個通道控制機制,只要確認任何通道都可以單獨到遠端,就可以任意組合並按照線路特性分配比重。Tip
影片參考|眾至NU系列 UTM教學 SD-WAN功能說明、SD-WAN設定範例
點選 SD-WAN 列表下方的 即可進入新增 SD-WAN:【群組名稱】:此 SD-WAN 名稱。【比重】:負載分配比例。如果使用 3 個線路當作負載線路,分別設成 A 線路:1, B 線路:2, C 線路:3,則第一個封包會往 A 線路送,第 2、3 個往 B 線路送,第 4、5、6 封包往 C 線路送,第 7 個再往 A 線路,以此類推。【VPN 通道】:用 IPSec VPN 建立的通道。【出口線路】:接在 NG-UTM 上的實體線路。SD-WAN 建立完成後會顯示於列表,而到目前為止只是定義好線路,要設定這些線路能跑哪些協議則需要到管制條例中的 4-3、SD-WAN 管制 處理。