Get Hands-on with Amazon EKS - Workshop Event Series
Whether you're taking your first steps with Kubernetes or you're an experienced practitioner looking to sharpen your skills, our Amazon EKS workshop series delivers practical, real-world experience that moves you forward. Learn directly from AWS solutions architects and EKS specialists through hands-on sessions designed to build your confidence with Kubernetes. Register now and start building with Amazon EKS!
如何使用 AWS CLI 設定 Client VPN?
我想使用 AWS Command Line Interface (AWS CLI) 設定 AWS Client VPN。
解決方法
**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤,則請參閱對 AWS CLI 錯誤進行疑難排解。此外,請確定您使用的是最新的 AWS CLI 版本。Client VPN 服務的 API 動作僅適用於最新的 AWS CLI 版本。
使用相互驗證設定 Client VPN
若要使用相互驗證設定 Client VPN,請完成下列步驟:
- 產生伺服器和用戶端憑證,然後將憑證上傳到 AWS Certificate Manager (ACM)。
- 請記下伺服器憑證 ARN 和用戶端憑證 ARN。
- 執行 create-client-vpn-endpoint 命令。例如,下列命令會建立端點,該端點使用與用戶端 CIDR 區塊 172.16.0.0/16 的相互驗證:
$ aws --region us-east-1 ec2 create-client-vpn-endpoint --client-cidr-block 172.16.0.0/16 --server-certificate-arn arn:aws:acm:us-east-1:1234567890:certificate/abc1d23e-45fa-678b-9cd0-ef123a45b678 --authentication-options Type=certificate-authentication,MutualAuthentication={ClientRootCertificateChainArn=arn:aws:acm:us-east-1:1234567890:certificate/abc1d23e-45fa-678b-9cd0-ef123a45b678} --connection-log-options Enabled=false
注意:
- 針對用戶端 IPv4 CIDR 區塊,請以 CIDR 標記法指定 IP 位址範圍,以指派用戶端 IP 地址。
- ClientRootCertificateChainArn 是用戶端憑證的 ARN。憑證認證機構 (CA) 必須簽署憑證,而且您必須在 ACM 中產生憑證。
- AWS Client VPN 為 AWS 區域特定。您 VPN 的區域必須與您憑證的區域相符。
使用基於使用者的驗證來設定 Client VPN
活動目錄驗證
若要使用 Active Directory 驗證設定 Client VPN,請完成下列步驟:
- 針對目錄 ID,指定 AWS Active Directory 的識別碼。
- 執行 create-client-vpn-endpoint 命令。例如,下列命令會建立端點,該端點使用以作用中目錄為基礎的驗證,其用戶端 CIDR 區塊為 172.16.0.0/16:
$ aws --region us-east-1 ec2 create-client-vpn-endpoint --client-cidr-block 172.16.0.0/16 --server-certificate-arn arn:aws:acm:us-east-1:1234567890:certificate/abc1d23e-45fa-678b-9cd0-ef123a45b678 --authentication-options Type=directory-service-authentication,ActiveDirectory={DirectoryId=d-1234567890} --connection-log-options Enabled=false
注意:
- 使用 —dns-servers 選項來傳遞自定義 DNS 伺服器進行 DNS 解析。Client VPN 端點最多可以有兩個 DNS 伺服器。如果您未指定 DNS 伺服器,則會使用在本機裝置上設定的 DNS 位址。
- 使用 —transport-protocol 選項來設定 VPN 工作階段的傳輸通訊協定。
同盟驗證 (適用於以 SAML 為基礎的同盟驗證)
若要使用同盟驗證設定 Client VPN,請完成下列步驟:
- 對於 SAML 提供者 ARN,請指定 AWS 身分識別與存取管理 (IAM) 安全聲明標記語言 (SAML) 身分提供者的 ARN。
- 執行 create-client-vpn-endpoint 命令。例如,下列命令會建立一個端點,該端點使用聯合驗證和用戶端 CIDR 區塊 172.16.0.0/16:
注意: 以 IAM 中 SAML 提供者資源的 ARN 取代 SAMLProviderArn,並以 SAML 提供者的名稱取代 MySAMLProvider。$ aws --region us-east-1 ec2 create-client-vpn-endpoint --client-cidr-block 172.16.0.0/16 --server-certificate-arn arn:aws:acm:us-east-1:1234567890:certificate/abc1d23e-45fa-678b-9cd0-ef123a45b678 --authentication-options Type=federated-authentication,FederatedAuthentication={SAMLProviderArn=arn:aws:iam::123456789012:saml-provider/MySAMLProvider} --connection-log-options Enabled=false
將子網路與 Client VPN 建立關聯
執行 associate-client-vpn-target-network 命令,以將子網路與 Client VPN 端點建立關聯:
$ aws --region us-east-1 ec2 associate-client-vpn-target-network --client-vpn-endpoint-id cvpn-endpoint-0ab1cd234ef567ab890 --subnet-id subnet-0123456789abc123
此動作會將 Client VPN 的狀態變更為可用。虛擬私有雲端 (VPC) 的本機路由會自動新增至 Client VPN 端點路由表。VPC 的預設安全性群組會自動套用至子網路關聯。關聯子網路之後,您可以修改安全性群組。
新增授權規則以授與用戶端存取目標 VPC
若要新增授權規則,請對您使用的授權執行 authorize-client-vpn-ingress 命令:
相互身分驗證
$ aws --region us-east-1 ec2 authorize-client-vpn-ingress --client-vpn-endpoint-id cvpn-endpoint-0ab1cd234ef567ab890 --target-network-cidr 10.0.0.0/16 --authorize-all-groups
活動目錄驗證
$ aws --region us-east-1 ec2 authorize-client-vpn-ingress --client-vpn-endpoint-id cvpn-endpoint-0ab1cd234ef567ab890 --target-network-cidr 10.0.0.0/16 --access-group-id S-1-2-34-1234567890-1234567890-1234567890-1234
同盟驗證 (SAML 2.0)
$ aws --region us-east-1 ec2 authorize-client-vpn-ingress --client-vpn-endpoint-id cvpn-endpoint-0ab1cd234ef567ab890 --target-network-cidr 10.0.0.0/16 --access-group-id MyAccessGroup
注意: 以提供者群組的存取群組 ID 取代 MyAccessGroup。
(選擇性) 執行 create-client-vpn-route 命令將其他路由新增至 Client VPN 端點上的目的地網路:
$ aws --region us-east-1 ec2 create-client-vpn-route --client-vpn-endpoint-id cvpn-endpoint-0ab1cd234ef567ab890 --destination-cidr-block 0.0.0.0/0 --target-vpc-subnet-id subnet-0123456789abcabca
匯出 Client VPN 端點組態檔案
匯出 Client VPN 端點組態檔案。使用此檔案以分配給您的用戶端。
注意: 如果您使用相互身分驗證來設定 Client VPN,請執行 export-client-vpn-client-configuration 命令,以將用戶端憑證和用戶端金鑰附加至組態檔案:
$ aws --region us-east-1 ec2 export-client-vpn-client-configuration --client-vpn-endpoint-id cvpn-endpoint-0ab1cd234ef567ab890 --output text > client-config.ovpn
- 語言
- 中文 (繁體)

相關內容
- 已提問 3 年前
- 已提問 1 年前