使用SSL-VPN串連的過程中,如果SSL-VPN串連異常,您可以根據用戶端的日誌資訊、VPN網關管理主控台SSL-VPN串連的日誌資訊自主排查問題。
背景資訊
本文匯總了SSL-VPN串連常見錯誤及排查方法,您可以通過用戶端的日誌資訊和VPN網關管理主控台SSL-VPN串連的日誌資訊,對照本文的匯總表自主排查,協助您快速解決SSL-VPN串連的問題。
如何擷取Linux、Windows、macOS和Android用戶端日誌資訊,請參見SSL-VPN用戶端日誌目錄匯總。
如何查看SSL-VPN串連的日誌資訊,請參見查看SSL服務端日誌。
SSL-VPN用戶端日誌目錄匯總
下表列舉了不同VPN軟體安裝在不同作業系統的用戶端後,SSL-VPN串連記錄檔的位置。您可以在對應位置下查看用戶端的日誌資訊。
如果您在安裝VPN軟體時自訂了記錄檔的位置,請您在相應位置下查看日誌資訊。
用戶端 | SSL-VPN串連記錄檔預設路徑 |
Linux用戶端(安裝OpenVPN軟體) | /var/log/openvpn.log |
Windows用戶端(安裝OpenVPN軟體) | 日誌資訊預設會儲存在OpenVPN軟體安裝目錄下的log檔案夾下 例如C:\Users\User\OpenVPN\log |
macOS用戶端(安裝Tunnelblick軟體) | /Library/Application Support/Tunnelblick/Logs |
macOS用戶端(安裝OpenVPN軟體) | /Library/Application Support/OpenVPN/log/connection_name.log |
SSL-VPN串連常見錯誤及排查方法匯總
在您擷取SSL-VPN串連的日誌資訊後,您可以在下表中通過匹配日誌關鍵字查看對應的排查方法。
錯誤原因分類 | 錯誤原因 | 日誌關鍵字 | 排查辦法 |
網路不可達 | 網路不可達,網路互連有問題 |
|
|
協議類型或連接埠號碼不匹配 | 用戶端與SSL服務端的協議類型或連接埠號碼不一致 |
| 請嘗試修改SSL服務端使用的協議和連接埠,然後重新下載SSL用戶端認證並安裝到用戶端。 |
串連數超限 | SSL用戶端串連數已達規格上限 |
|
|
認證到期 | 認證到期 |
|
|
認證配置錯誤 | 認證配置錯誤 |
| 請刪除現有的SSL用戶端認證及配置,然後重新下載、安裝SSL用戶端認證。 |
用戶端VPN軟體版本不相容 | 用戶端使用的VPN軟體版本與阿里雲SSL服務端不相容 |
| 在用戶端刪除現有VPN軟體,然後參見VPN文檔下載安裝VPN軟體。 |
IP地址不足 | SSL服務端下配置的用戶端網段過小導致IP地址不足 |
| 請確保您指定的用戶端網段所包含的IP地址個數是SSL-VPN串連數的4倍及以上。更多資訊,請參見建立和管理SSL服務端。 例如:您指定的用戶端網段為192.168.0.0/24,系統在為用戶端分配IP地址時,會先從192.168.0.0/24網段中劃分出一個子網路遮罩為30的子網段,例如192.168.0.4/30,然後從192.168.0.4/30中分配一個IP地址供用戶端使用,剩餘三個IP地址會被系統佔用以保證網路通訊,此時一個用戶端會耗費4個IP地址。因此,為保證您的用戶端均能分配到IP地址,請確保您指定的用戶端網段所包含的IP地址個數是SSL-VPN串連數的4倍及以上。 |
無相同密碼編譯演算法 | SSL服務端沒有與用戶端相同的TLS密碼套件,無相同密碼編譯演算法可用 |
| 請在用戶端中安裝VPN網關產品推薦使用的VPN軟體。更多資訊,請參見配置用戶端。 |
密碼編譯演算法不一致 | SSL服務端與用戶端密碼編譯演算法配置不一致 |
| 請確認用戶端安裝的SSL用戶端認證的密碼編譯演算法是否與SSL服務端的密碼編譯演算法一致。 如果不一致,請刪除現有的SSL用戶端認證及所有配置,然後重新下載SSL用戶端認證並安裝到用戶端。
|
資料包ID衝突 | 網路連接不穩定或SSL服務端密碼編譯演算法配置為none |
|
|
時間不同步 | SSL校正不通過或者是用戶端的時間與伺服器的時間相差太大 |
|
|
認證校正不通過 | SSL認證校正不通過 |
|
|
雙因子認證失敗 | 雙因子認證失敗 |
|
|
缺失TAP口 | 用戶端缺失TAP虛擬乙太網路適配器,需重新建立 |
|
|
ovpnagent沒有運行 | macOS作業系統的用戶端下ovpnagent程式沒有運行 |
|
|
用戶端頻繁重新串連 | 用戶端主動或自動重新串連 |
|
|
網路ACL配置問題 | VPC交換器綁定的網路ACL未允許存取VPN用戶端網段的入向流量 | SSL-VPN串連成功,但無法訪問VPC內的資源。 |
|
排查安全性群組規則
請確保ECS執行個體的安全性群組規則允許用戶端訪問。
安全性群組規則有優先順序。如果安全性群組中存在兩條優先順序相同,動作分別為允許和拒絕的規則,那麼拒絕規則優先生效。樣本:
問題現象:SSL-VPN 串連後無法 ping 通 VPC 內資源。
問題原因:安全性群組中存在兩條優先順序均為 1 的入方向 ICMP 規則:
拒絕所有源(0.0.0.0/0)
允許 VPN 用戶端端網段(10.200.200.0/24)
當兩條規則優先順序一致時,拒絕規則優先生效,導致 ICMP 流量被阻斷。
解決方案:將拒絕規則的優先順序數值調大(如從 1 調整為 2),使允許規則(優先順序 1)優先匹配生效。
排查ECS執行個體作業系統防火牆
如果SSL-VPN串連已建立成功,但無法ping通ECS執行個體或訪問ECS執行個體上的服務,請登入ECS執行個體排查作業系統層面的防火牆是否阻斷了來自VPN用戶端的流量。
執行以下命令檢查firewalld服務狀態。
systemctl status firewalld若firewalld處於
active (running)狀態,說明防火牆正在運行。執行sudo systemctl stop firewalld臨時關閉防火牆後重新測試連通性。如果關閉防火牆後流量恢複,說明firewalld規則阻斷了VPN流量,請配置允許存取VPN用戶端網段的規則。執行以下命令查看iptables規則。
iptables -L檢查輸出結果中是否存在DROP或REJECT規則阻斷了來自VPN用戶端網段的流量。如果存在,執行
sudo iptables -I INPUT -s <VPN用戶端網段> -j ACCEPT添加允許存取規則。執行以下命令檢查SELinux狀態。
getenforce若返回
Enforcing,說明SELinux處於強制模式。執行sudo setenforce 0臨時切換為Permissive模式後重新測試。如果流量恢複,說明SELinux策略影響了VPN通訊,請調整SELinux策略以允許存取VPN流量。
相關操作
以下為您提供排查SSL-VPN串連問題時可能會用到的操作文檔及相關說明:
修改SSL服務端的配置,請參見修改SSL服務端。
修改SSL服務端串連數規格,請參見修改SSL並發串連數。
建立SSL用戶端認證,請參見建立和管理SSL用戶端認證。
下載SSL用戶端認證,請參見下載SSL用戶端認證。
安裝SSL用戶端認證,請參見配置用戶端。
查看SSL服務端日誌資訊,請參見查看SSL服務端日誌。
查看用戶端串連資訊,請參見查看SSL用戶端的串連資訊。
在排查SSL-VPN串連問題的過程中,如果您需要修改用戶端的配置,請參見用戶端操作指南手冊。