專欄文章

AWS VPN 雲地混合雲服務

AWS VPN 雲地混合雲服務

Site-to-Site VPN & Client VPN 都是 AWS 用來做混合雲架構的服務,透過不同的驗證方式來保證傳輸的安全。
 

主要差別:

Site-to-Site VPN 讓地端環境的特定網段可以安全連接到雲端 VPC 部署,不需要下載任何軟體連接,只需要設定防火牆相關的安全通道,設定 IPSEC 打通通道連線。Client VPN 讓使用者可以透過不同身分驗證方式以及下載 VPN 軟體來安全連線到地跟雲的網路環境。同時,在使用 AWS VPN 服務時能夠透過 CloudWatch 來收 log 監控 VPN 的連線狀態,結合了監控功能以了解 VPN 的連線紀錄並設定通知提醒。


ClientVPN

OpenVPN 為基礎的 VPN 服務,可以安全的連接地端跟雲端環境,並且為基於客戶端的托管 VPN 服務。
可以使用的認證方式:

 
1. Mutual authentication (certificate-based)
2. Active Directory authentication (user-based)
3. Single sign-on / SAML-based federated authentication (user-based)
 

本篇以 Mutual authentication 作 demo:

使用 ACM 管理證書的認證方式

  • Mutual authentication (交互身分驗證)
透過交互身分驗證,Client VPN 使用憑證在用戶端和伺服器之間執行身分驗證,將伺服器憑證上傳至 AWS Certificate Manager (ACM),並在建立 Client VPN 端點時加以指定。
當用戶端憑證的 CA 和伺服器憑證的 CA 不同時,您才需要將用戶端憑證上傳到 ACM。如需 ACM 的詳細資訊,請參閱《
AWS Certificate Manager ACM 使用者指南》。

 
ACM 管理證書的認證方式
 

前置環境:

 
1. VPC 四個私有子網 (高可用性架構,一個子網放 EC2,兩個子網分配 VPN Endpoint 的eni)
2. 建立 EC2 Linux (sg 要開 ICMP)
3. 建立 CloudWatch Log Group 、新增 log stream
4. 下載 VPN 軟體、RSA 認證,建立 Server 端跟客戶端的證書及鑰匙
 
 
下載 VPN 軟體、RSA 認證,建立 Server 端跟客戶端的證書及鑰匙
 

上傳到 ACM

 
上傳到 ACM
 
上傳到 ACM
 

5. AWS Client VPN 的 Endpoint 設定:
 Client IPv4 CIDR 可參考填入公布的專用網路範圍
 

Client CIDR range

到 ClientVPN Endpoint 終端節點的每個連接都配有來自 Client CIDR Range 的唯一 IP 地址。該範圍為介於/12 以及/22 之間的 IPv4 區塊,建立後無法修改。
 
ClientVPN Endpoint 終端節點的每個連接都配有來自 Client CIDR Range 的唯一IP 地址
 

建立完成 ClientVPN 中的設定

將 eni 加入兩個子網:
連線數量取決於子網的數量,相同的可用區內,不能與多個子網路建立關聯,如果要增加連線數量,您可以建立高可用的架構選擇 multi-AZ 來做部署。
參考文件:Client VPN scaling considerations

 
建立完成 ClientVPN 中的設定
(認證規則)
 
 
建立完成 ClientVPN 中的設定
 
(確認 RT 狀態 >> active)

建立完成 ClientVPN 中的設定

 
6. 下載配置檔
 
下載配置檔



用 notepad 打開會看到文末有加入客戶端的 key 跟認證
加入客戶端的 key 跟認證

 
 
7. 下載 AWS VPN Client.msi 並設定。參考文件:AWS Client VPN download
 
下載 AWS VPN Client.msi 並設定

下載 AWS VPN Client.msi 並設定
 
 
8. 進行連線:
          ping EC2 Private IP >> 10.0.0.150
          netstat -rt 查看路由,新增一條您設定的 CIDR range 的路由連線。

 
進行連線
 
  • Connection Check
 
Connection Check
 
  • netstat -rt 查看路由
 
netstat -rt 查看路由

 

Site-to-Site VPN

 
Site-to-Site VPN
 

Site-to-site VPN 可定義 CIDR 範圍,讓範圍內 IP 可互通,因此要注意網段不能衝突。使用的情形下,資料在兩地可以不用建立證書以及客戶端 VPN 軟體等應用程序來使用,需要的是建立兩邊的端點: Customer Gateway (CGW) 以及 Transit Gateway (TGW) 或 Virtual Private Gateway (VPG)。客戶端的對外的網路 IP 地址作為 CGW 的端點。雲端的部分可以選擇要透過 VPG 還是 TGW 做雲端的端點。

TGW 好處是在方便管理,可以用同一個 TGW 連接多個 VPC。VPG 的話,只能一個 VPC 對應一個 VPG 的方式連接。TGW 開啟 ECMP (等價多路徑) 路由功能可以擴展 VPN 吞吐能力。每個 attachment 創建兩個隧道,VPN 吞吐量隨著 VPN attachment 數量的增加。吞吐量的增加取決於客戶網關 VPN 吞吐能力以及對動態路由和 ECMP 特性的支援。

參考文件:Scaling VPN throughput using AWS Transit Gateway
 

使用混合雲透過 VPN 連線上 AWS 建立過程包括以下步驟:

 
  • 創建一個 Customer Gateway。IP 使用防火牆對外 IP (若還有 NAT 請填 NAT IP)
  • 創建一個 Transit Gateway
  • Transit gateway attachments 建立與雲端 VPC 關聯的 attachment
  • 創建 Site-to-site VPN connection ,並下載防火牆的配置檔,通用為 Generic (配置檔的內容需去防火牆做 IPSEC 設定以打通通道)
 

使用混合雲透過 VPN 連線上 AWS 建立過程

使用混合雲透過 VPN 連線上 AWS 建立過程

 
  • 通道打通的話,可看到兩條隧道會顯示 UP 表示已連接
  • 設定路由表: AWS Routetable 新增路由 TGW 以連線到目的地的地端網路 (Local Lan)

通道打通的話,可看到兩條隧道會顯示 UP 表示已連接

 
  • 嘗試地端機台 ping 、雲端私有 IP 以確認是否成功配置 Site-to-Site VPN 連接雲地環境
  • 使用指令查看通道連線路由-> sudo tcpdump -eni any icamp

嘗試地端機台ping 、雲端私有 IP 以確認是否成功配置Site-to-Site VPN 連接雲地環境
 

 

因此,若發現雲地之間有相互回應,代表與雲端主機連線成功,可透過地端網路環境與雲端直接溝通,並且嘗試未來使用雲端機台時,是否能夠正確執行預期的效能,以及體驗雲端運算的方便性,評估後就能正式將工作負載遷移上雲端, 讓雲端替您管理底層的基礎設施。

深耕雲端產業十多年的銓鍇國際 CKmates,擁有豐富的混合雲服務經驗,協助不同產業建置雲地環境和系統整合,是企業值得信賴的雲端數位長。
即刻聯繫銓鍇國際 CKmates,替您的企業開啟混合雲應用旅程!

 



 

最新文章

加入 Line 好友 加入 Line 好友 歡迎來聊聊 寄信給我們 訂閱電子報
joinline