本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
故障診斷 AWS Client VPN:VPC 的通道連線問題
當您的 AWS Client VPN 連線遇到連線問題時,請遵循此系統疑難排解方法來識別並解決問題。本節提供step-by-step程序,以診斷遠端用戶端與 Amazon VPC 資源之間的常見 Client VPN 連線問題。
主題
網路連線先決條件
在對 Client VPN 連線進行故障診斷之前,請確認這些網路先決條件:
-
確保 Client VPN 端點子網路具有網際網路連線能力 (透過網際網路閘道或 NAT 閘道)。
-
確認 Client VPN 端點與不同可用區域中的子網路相關聯,以獲得高可用性。
-
檢查 VPC 是否有足夠的 IP 地址空間,且不與用戶端 CIDR 區塊衝突。
-
確認目標子網路具有適當的路由表關聯。
檢查 Client VPN 端點狀態
首先,確認您的 Client VPN 端點處於正確狀態:
-
使用 AWS CLI 檢查 Client VPN 端點狀態:
aws ec2 describe-client-vpn-endpoints --region
your-region
-
在輸出中尋找端點狀態。狀態應為
available
。 -
確認端點具有相關聯的目標網路 (子網路)。
-
如果狀態不是
available
,請檢查可能表示組態問題的任何錯誤訊息或擱置狀態。
驗證用戶端連線
檢查用戶端連線至 Client VPN 端點的狀態:
-
檢查作用中的用戶端連線:
aws ec2 describe-client-vpn-connections --client-vpn-endpoint-id
cvpn-endpoint-id
--regionyour-region
-
檢閱連線狀態和輸出中的任何錯誤訊息。
-
檢查用戶端身分驗證日誌是否有失敗的身分驗證嘗試。
-
確認用戶端正在從設定的用戶端 CIDR 區塊接收 IP 地址。
注意
如果用戶端無法連線,問題可能是身分驗證組態、授權規則或網路連線。
驗證用戶端身分驗證
身分驗證問題是 Client VPN 連線問題的常見原因:
-
對於交互身分驗證,請確保用戶端憑證有效且未過期。
-
針對 Active Directory 身分驗證,驗證使用者登入資料和網域連線。
-
對於以 SAML 為基礎的聯合身分驗證,請檢查 IdP 組態和使用者許可。
-
檢閱 CloudWatch 中的身分驗證日誌,以取得詳細的錯誤資訊。
-
確認端點上設定的身分驗證方法符合用戶端組態。
檢查授權規則
授權規則控制用戶端可存取的網路資源:
-
列出目前的授權規則:
aws ec2 describe-client-vpn-authorization-rules --client-vpn-endpoint-id
cvpn-endpoint-id
--regionyour-region
-
確認用戶端需要存取的目標網路存在規則。
-
檢查規則是否指定正確的 Active Directory 群組 (如果使用 AD 身分驗證)。
-
確保授權規則處於
active
狀態。
驗證 Client VPN 路由
適當的路由組態對於 Client VPN 連線至關重要:
-
檢查 Client VPN 端點路由:
aws ec2 describe-client-vpn-routes --client-vpn-endpoint-id
cvpn-endpoint-id
--regionyour-region
-
驗證用戶端需要存取的目標網路是否有路由。
-
檢查 Amazon VPC 路由表,以確保傳回流量可以到達 Client VPN 端點:
aws ec2 describe-route-tables --filters "Name=vpc-id,Values=
vpc-id
" --regionyour-region
-
確認目標網路關聯已正確設定。
驗證安全群組和網路 ACLs
安全群組和網路 ACLs可以封鎖 Client VPN 流量:
-
檢查目標 EC2 執行個體的安全群組:
aws ec2 describe-security-groups --group-ids
sg-xxxxxxxxx
--regionyour-region
-
驗證傳入規則允許來自 Client VPN CIDR 區塊的流量:
Client VPN CIDR 的 SSH (連接埠 22):
10.0.0.0/16
來自 Client VPN CIDR 的 HTTP (連接埠 80):
10.0.0.0/16
來自 Client VPN CIDR 的 HTTPS (連接埠 443):
10.0.0.0/16
視需要自訂應用程式連接埠
-
對於 Client VPN 端點安全群組 (如果適用),請確保它允許:
從 0.0.0.0/0 的 UDP 連接埠 443 (OpenVPN)
所有傳出至 VPC CIDR 區塊的流量
-
檢查網路 ACLs是否未封鎖流量。網路 ACLs 是無狀態的,因此必須設定傳入和傳出規則。
-
驗證您嘗試傳送之特定流量的傳入和傳出規則。
測試用戶端連線
測試從 Client VPN 用戶端到 Amazon VPC 資源的連線:
-
從連線的 Client VPN 用戶端,測試與 Amazon VPC 資源的連線:
ping
vpc-resource-ip
traceroutevpc-resource-ip
-
測試特定應用程式連線:
telnet
vpc-resource-ip
port
-
如果使用私有 DNS 名稱,請驗證 DNS 解析:
nslookup
private-dns-name
-
如果已啟用分割通道,則測試網際網路資源的連線能力。
診斷用戶端裝置
在用戶端裝置上執行這些檢查:
-
確認用戶端組態檔案 (.ovpn) 包含正確的設定:
正確的伺服器端點 URL
有效的用戶端憑證和私有金鑰
適當的身分驗證方法組態
-
檢查用戶端日誌是否有連線錯誤:
Windows:事件檢視器 → 應用程式和服務日誌 → OpenVPN
macOS:主控台應用程式,搜尋「Tunnelblick」或「OpenVPN」
Linux:
/var/log/openvpn/
或系統化日誌
-
從用戶端測試基本網路連線:
ping 8.8.8.8 nslookup
cvpn-endpoint-id
.cvpn.region
.amazonaws.com
故障診斷 DNS 解析
DNS 問題可能會阻止使用私有 DNS 名稱存取資源:
-
檢查 DNS 伺服器是否已在 Client VPN 端點中設定:
aws ec2 describe-client-vpn-endpoints --client-vpn-endpoint-ids
cvpn-endpoint-id
--query 'ClientVpnEndpoints[0].DnsServers' -
從用戶端測試 DNS 解析:
nslookup
private-resource.internal
digprivate-resource.internal
-
如果使用自訂 DNS 解析,請確認 Route 53 Resolver 規則。
-
檢查安全群組是否允許從 Client VPN CIDR 到 DNS 伺服器的 DNS 流量 (UDP/TCP 連接埠 53)。
對效能進行故障診斷
解決 Client VPN 連線的效能問題:
-
使用 CloudWatch 指標監控傳入/傳出位元組的頻寬使用率。
-
使用用戶端的持續 ping 測試來檢查封包遺失。
-
確認 Client VPN 端點未達到連線限制。
-
考慮使用多個 Client VPN 端點進行負載分佈。
-
使用不同的用戶端位置進行測試,以識別區域效能問題。
監控 Client VPN 指標
使用 CloudWatch 監控 Client VPN 端點指標:
-
檢查作用中連線指標:
aws cloudwatch get-metric-statistics \ --namespace AWS/ClientVPN \ --metric-name ActiveConnectionsCount \ --dimensions Name=Endpoint,Value=
cvpn-endpoint-id
\ --start-timestart-time
\ --end-timeend-time
\ --period 300 \ --statistics Average -
檢閱身分驗證失敗指標:
aws cloudwatch get-metric-statistics \ --namespace AWS/ClientVPN \ --metric-name AuthenticationFailures \ --dimensions Name=Endpoint,Value=
cvpn-endpoint-id
\ --start-timestart-time
\ --end-timeend-time
\ --period 300 \ --statistics Sum -
檢閱其他可用的指標,例如輸入和輸出位元組和封包。
檢查 Client VPN 日誌
Client VPN 連線日誌提供有關連線嘗試和錯誤的詳細資訊:
-
如果尚未設定,請啟用 Client VPN 連線記錄。
-
檢閱 CloudWatch 日誌是否有連線嘗試、身分驗證失敗和授權錯誤。
-
尋找指出連線問題根本原因的特定錯誤代碼和訊息。
-
檢查失敗連線中可能表示組態問題的模式。
常見問題與解決方案
可能影響 Client VPN 連線的常見問題:
- 身分驗證失敗
-
用戶端憑證過期或無效,或 Active Directory 憑證不正確。驗證身分驗證組態和憑證有效性。
- 缺少授權規則
-
由於授權規則遺失或不正確,用戶端無法存取目標網路。為所需的網路新增適當的授權規則。
- 分割通道問題
-
由於通道組態分割,流量路由不正確。視需要檢閱和調整分割通道設定。
- 用戶端 IP 集區耗盡
-
用戶端 CIDR 區塊中沒有可用的 IP 地址。展開用戶端 CIDR 範圍或中斷連接未使用的用戶端。
- MTU 問題
-
由於 MTU 大小限制,大型封包正在捨棄。嘗試將 MTU 設定為 1436 位元組,或在用戶端裝置上啟用路徑 MTU 探索。
- DNS 解析問題
-
用戶端無法解析私有 DNS 名稱。驗證 DNS 伺服器組態,並確保透過安全群組允許 DNS 流量。
- 重疊 IP 範圍
-
用戶端 CIDR 區塊與本機網路範圍衝突。檢查並解決用戶端 CIDR 和本機網路之間任何重疊的 IP 地址範圍。
- TLS 交握失敗
-
TLS 交涉期間連線失敗。檢查憑證有效性、確保正確的密碼套件,並確認已正確設定用戶端和伺服器憑證。
- 路由傳播延遲
-
用戶端無法立即使用新路由。變更 Client VPN 路由後,請等待 1-2 分鐘進行路由傳播。
- 連線中斷/不穩定
-
經常中斷連線或連線不穩定。檢查用戶端裝置上的網路擁塞、防火牆干擾或電源管理設定。