AWS Client VPN 入門 - AWS Client VPN

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS Client VPN 入門

在本教學中,您將會建立執行下列作業的 Client VPN 端點:

  • 提供所有用戶端對單一 VPC 的存取權。

  • 提供所有用戶端存取網際網路。

  • 使用交互身分驗證

以下圖表顯示在您完成本教學後,VPC 和 Client VPN 端點的組態。


			存取網際網路的 Client VPN

必要條件

開始本教學課程之前,請確定您有:

  • 使用 Client VPN 端點的必要許可。

  • 將憑證導入 AWS Certificate Manager 的許可。

  • 具有至少一個子網路和一個網際網路閘道的 VPC。與子網路相關聯的路由表必須具有通往網際網路閘道的路由。

步驟 1:產生伺服器和用戶端憑證及金鑰

此教學課程使用交互身分驗證。透過交互身分驗證,Client VPN 使用憑證在用戶端和 Client VPN 端點之間執行身分驗證。您必須建立伺服器憑證和金鑰,以及至少一個用戶端憑證和金鑰。至少需要將伺服器憑證匯入 AWS Certificate Manager (ACM),並在您建立 Client VPN 端點時指定。將客户端憑證匯入 ACM 是選擇性的。

如果您還沒有使用於此用途的憑證,則可使用 OpenVPN easy-rsa 實用程序建立這些憑證。有關使用 OpenVPN easy-rsa 實用程序產生伺服器和用户端憑證及金鑰,然後將它們匯入 ACM 中的詳細步驟,請參閱交互身分驗證

注意

伺服器憑證必須佈建或匯入相同的 AWS 區域內的 AWS Certificate Manager (ACM),您將在此建立Client VPN 端點。

步驟 2:建立 Client VPN 端點

Client VPN 端點是您為了啟用和管理 Client VPN 工作階段而建立及設定的資源。它是所有用户端 VPN 工作階段的終止點。

建立 Client VPN 端點
  1. 前往 https://console.aws.amazon.com/vpc/ 開啟 Amazon VPC 主控台。

  2. 在導覽窗格中,選擇 Client VPN Endpoints (Client VPN 端點),然後選擇 Create Client VPN Endpoint (建立 Client VPN 端點)。

  3. (選用) 提供 Client VPN 端點的名稱標籤和說明。

  4. 對於 Client IPv4 CIDR (用戶端 IPv4 CIDR),以 CIDR 標記法指定 IP 地址範圍,以從中指派用戶端 IP 地址。

    注意

    地址範圍不得與目標網路地址範圍、VPC 地址範圍或任何將與 Client VPN 端點關聯的路由重疊。用户端地址範圍必須至少為 /22 且不大於 /12 CIDR 區塊大小。建立 Client VPN 端點後,您無法變更用戶端地址範圍。

  5. 對於伺服器憑證 ARN,選取您在步驟 1 中產生的伺服器憑證。

  6. Authentication options (身分驗證選項) 下,選擇 Use mutual authentication (使用交互身分驗證),然後對於 Client certificate ARN (用戶端憑證 ARN),選取您想要使用為用戶端憑證的憑證 ARN。

    如果伺服器和用戶端憑證是由同一家憑證授權機構 (CA) 所發行,則您可指定用戶端和伺服器憑證兩者的憑證 ARN。在這種情況下,與伺服器憑證對應的任何客户端憑證均可用於進行身分驗證。

  7. 保留其他預設設定,然後選擇 Create Client VPN endpoint (建立 Client VPN 端點)。

在您建立 Client VPN 端點後,其狀態為 pending-associate。只有在您將至少一個目標網路相關聯後,用戶端才能建立 VPN 連接。

如需 Client VPN 端點可指定的選項詳細資訊,請參閱 建立 Client VPN 端點。

步驟 3:建立目標網路關聯

若要讓用戶端建立 VPN 工作階段,您必須將目標網路與 Client VPN 端點關聯。目標網路是 VPC 中的子網路。

建立目標網路與 Client VPN 端點的關聯
  1. https://console.aws.amazon.com/vpc/ 開啟 Amazon VPC 主控台。

  2. 在導覽窗格中,選擇 Client VPN Endpoints (Client VPN 端點)。

  3. 選取您在先前的步驟中所建立的 Client VPN 端點,然後選擇 Target network associations (目標網路關聯)、Associate target network (關聯目標網路)。

  4. 對於 VPC,選擇子網路所在的 VPC。

  5. 對於 Choose a subnet to associate (選擇要關聯的子網路),選擇要和 Client VPN 端點關聯的子網路。

  6. 選擇 Associate target network (關聯目標網路)。

  7. 如果授權規則允許,一個子網路關聯就足以讓用戶端存取 VPC 的整個網路。您可以關聯其他子網路,以在一個可用區域發生故障時提供高可用性。

當您將第一個子網路與 Client VPN 端點建立關聯時,會發生下列情況:

  • Client VPN 端點的狀態會變更為 available。用戶端現在可以建立 VPN 連線,但在您新增授權規則之前,無法存取 VPC 中的任何資源。

  • VPC 的本機路由會自動新增到 Client VPN 端點路由表。

  • Client VPN 端點會自動套用 VPC 的預設安全群組。

步驟 4:新增 VPC 的授權規則

若要讓客户端存取 VPC,Client VPN 終端節點的路由表中需要指向 VPC 的路由和授權規則。路由已經在上一個步驟中自動新增。在本教學課程中,我們想要將存取權授予所有使用者。

若要新增 VPC 的授權規則
  1. https://console.aws.amazon.com/vpc/ 開啟 Amazon VPC 主控台。

  2. 在導覽窗格中,選擇 Client VPN Endpoints (Client VPN 端點)。

  3. 選取要新增授權規則的 Client VPN 端點。選擇 Authorization rules (授權規則),然後選擇 Add authorization rule (新增授權規則)。

  4. 對於 Destination network to enable access (要啟用存取權限的目的地網路),請輸入您要允許存取之網路的 CIDR。例如,若要允許存取整個 VPC,請指定 VPC 的 IPv4 CIDR 區塊。

  5. 授與存取權限中,選擇允許所有使用者存取權限。

  6. (選用) 對於 Description (描述),輸入授權規則的簡短描述。

  7. 選擇 Add authorization rule (新增授權規則)。

步驟 5:提供對網際網路的存取權限

您可以提供對與 VPC 相連的其他網路的存取,例如 AWS 服務、對等 VPC、現場部署網路和網際網路。對於每個額外的網路,您必須在 Client VPN 端點的路由表中新增到該網路的路由,並設定將存取權限授予用戶端的授權規則。

在本教程中,我們希望授予所有使用者對網際網路和 VPC 的存取權限。您已設定對 VPC 的存取權限,因此此步驟是用於存取網際網路。

提供對網際網路的存取
  1. https://console.aws.amazon.com/vpc/ 開啟 Amazon VPC 主控台。

  2. 在導覽窗格中,選擇 Client VPN Endpoints (Client VPN 端點)。

  3. 選取您為本教學建立的 Client VPN 端點。選擇 Route Table (路由表),然後選擇 Create Route (建立路由)。

  4. 對於 Route destination (路由目的地),輸入 0.0.0.0/0。對於 Subnet ID for target network association (目標網路關聯的子網路 ID),指定路由流量經過的子網路的 ID。

  5. 選擇 Create Route (建立路由)。

  6. 選擇 Authorization rules (授權規則),然後選擇 Add authorization rule (新增授權規則)。

  7. 對於 Destination network to enable access (要啟用存取權限的目的地網路),請輸入 0.0.0.0/0,然後選擇 Allow access to all users (允許所有使用者存取)。

  8. 選擇 Add authorization rule (新增授權規則)。

步驟 6:驗證安全群組要求

在本教程中,在步驟 2 中建立 Client VPN 端點時並未指定任何安全群組。這意味著當目標網路關聯時,VPC 的預設安全群組會自動套用到 Client VPN 端點。因此,VPC 的預設安全群組現在應該與 Client VPN 端點關聯。

驗證下列安全群組要求
  • 與您路由流量經過的子網路關聯的安全群組 (在本例中為預設 VPC 安全群組) 允許傳出流量傳入網際網路。為此,請新增允許所有流量傳入目的地 0.0.0.0/0 的傳出規則。

  • VPC 中資源的安全群組有一條規則,允許從套用至 Client VPN 端點的安全群組 (在此例中為預設的 VPC 安全群組) 進行存取。這可讓您的用戶端存取 VPC 中的資源。

如需詳細資訊,請參閱 安全群組

步驟 7:下載 Client VPN 端點組態檔案

下一個步驟是下載和準備 Client VPN 端點組態檔案。組態檔案包含 Client VPN 端點詳細資訊,以及建立 VPN 連接所需的憑證資訊。您可以提供此檔案給需要連線到 Client VPN 端點的最終使用者。最終使用者使用該檔案來設定其 VPN 用户端應用程式。

下載及準備 Client VPN 端點組態檔案
  1. https://console.aws.amazon.com/vpc/ 開啟 Amazon VPC 主控台。

  2. 在導覽窗格中,選擇 Client VPN Endpoints (Client VPN 端點)。

  3. 選取您為本教學建立的 Client VPN 端點,然後選擇 Download client configuration (下載用户端組態)。

  4. 找出步驟 1 中產生的用戶端憑證和金鑰。在複製的 OpenVPN easy-rsa 儲存庫的下列位置中,可以找到用戶端憑證和金鑰:

    • 用戶端憑證:easy-rsa/easyrsa3/pki/issued/client1.domain.tld.crt

    • 用戶端金鑰:easy-rsa/easyrsa3/pki/private/client1.domain.tld.key

  5. 使用您偏好的文字編輯器開啟 Client VPN 端點組態檔案。將 <cert></cert><key></key> 標籤新增至檔案中。將用户端憑證的內容和私有金鑰的內容放在相應的標籤之間,如下所示:

    <cert> Contents of client certificate (.crt) file </cert> <key> Contents of private key (.key) file </key>
  6. 儲存並關閉 Client VPN 端點組態檔案。

  7. 將 Client VPN 端點組態檔案分配給您的最終使用者。

如需 Client VPN 端點組態檔案的詳細資訊,請參閱匯出和設定用戶端組態檔

步驟 8:連線到 Client VPN 端點

您可以使用 AWS 提供的用戶端或其他 OpenVPN 類型的用戶端應用程式,以及您剛建立的組態檔案來連線到 Client VPN 端點。如需詳細資訊,請參閱《AWS Client VPN 使用者指南》。