在運維工程師的日常工作中,經常需要登錄到服務器上對應用部署和維護,配置修改是很常規操作。但是在日常運維工作中,經常也會遭遇“滑鐵盧”,當出現無法遠程連接服務器的時候,我們需要沉着冷靜,耐心分析報錯的癥結,方能更好的定位和排除問題。

今天百曉生就阿里雲服務器ECS無法遠程連接的問題,分享一波運維必備的問題排查方法,認同小編的童鞋,文末【點贊+再看】哦~
說明:以下操作在CentOS 6.5 64位操作系統中進行過測試
檢查CPU負載、帶寬及內存使用情況
確認是否存在CPU負載過高的情況
- 如果在某個時間段CPU負載過高,可能導致遠程連接失敗,建議您查詢程序或者實例資源是否不滿足現有要求。
- 如果不存在CPU負載過高的情況,則繼續下一步檢查。
確認公網帶寬是否不足
無法遠程連接可能是公網帶寬不足導致的,具體排查方法如下:
- 登錄ECS管理控制台。
- 找到該實例, 單擊管理進入實例詳情頁面,查看網絡監控數據。
- 檢查服務器帶寬是否為“1k”或“0k”。如果購買實例時沒有購買公網帶寬,後來升級了公網帶寬,續費的時候沒有選擇續費帶寬,帶寬就會變成“1k”。
確認內存是否不足
遠程連接輸入用戶密碼登錄後,不能正常顯示桌面直接退出,也沒有錯誤信息。這種情況可能是服務器內存不足導致的,需要查看一下服務器的內存使用情況。具體操作如下:
- 使用控制台遠程連接功能登錄到Linux實例。
- 查看內存使用情況,確認內存不足後,再進行處理。
客戶端排查
客戶端無法正常登錄時,先使用不同的SSH客戶端基於相同賬戶信息進行登錄測試。如果能正常登錄,則判斷是客戶端配置問題,需要對客戶端配置或軟件運行情況做排查分析。關於如何使用SSH客戶端登錄Linux實例,您可以參見遠程連接Linux實例。
步驟一:使用管理終端登錄實例
無論何種原因導致無法遠程連接實例,請先嘗試用阿里雲提供的遠程連接功能進行連接,確認實例還有響應,沒有完全宕機,然後再按原因分類進行故障排查。
- 錄雲服務器管理控制台,單擊左側導航欄中的實例,然後在目標實例右側單擊遠程連接。
- 在首次連接或忘記連接密碼時,單擊修改遠程連接密碼,修改遠程連接的密碼。
- 然後通過遠程連接密碼連接實例。
步驟二:檢查客戶端本地網絡是否異常
確認是否存在用戶本地無法連接外網的故障。
- 如果存在,則檢查網卡驅動,如果存在異常,則重新安裝。使用管理終端登錄實例,查看/etc/hosts.deny文件,查看是否存在攔截IP,如果存在則刪除此IP配置即可。
- 如果不存在,則繼續下一步檢查。
步驟三:重啟實例
在確保登錄密碼正確的情況下,確認之前是否曾重置過密碼。檢查重置實例密碼後是否未重啟實例,如果存在實例密碼修改記錄,但無重啟實例記錄,則參考以下操作步驟重啟實例:
- 登錄ECS管理控制台,單擊左側導航欄中的實例。
- 在頁面頂部的選擇對應的地域,目標實例右側單擊更多>實例狀態>重啟,再單擊確定即可。
中間網絡
中間網絡包括網絡檢查和端口檢查。
網絡檢查
無法正常遠程連接Linux實例時,需要先檢查網絡是否正常。
- 用其他網絡環境中,不同網段或不同運營商的電腦連接對比測試,判斷是本地網絡問題還是服務器端的問題。如果是本地網絡問題或運營商問題,請聯繫本地IT人員或運營商解決。如果是網卡驅動存在異常,則重新安裝。排除本地網絡故障後進行下一步檢查。
- 在客戶端使用ping命令測試與實例的網絡連通性。
1)網絡異常時,請參見網絡異常時如何抓取數據包進行排查。
2)當出現ping丟包或ping不通時,請參見使用ping命令丟包或不通時的鏈路測試方法進行排查。
3)如果出現間歇性丟包,ECS實例的網絡一直處於不穩定狀態時,請參見使用ping命令測試ECS實例的IP地址間歇性丟包進行解決。
4)系統內核沒有禁ping的情況下,使用ping命令測試ECS服務器,發現網絡不通,請參見Linux系統的ECS中沒有禁PING卻PING不通的解決方法。
端口檢查
網絡檢查正常後,進一步檢查端口是否正常。
1. 使用管理終端登錄實例,執行如下命令,編輯SSH配置文件。
vi /etc/ssh/sshd_config2. 找到“#port 22”所在行,檢查默認端口22是否被修改,且前面的“#”是否刪除,如果沒有刪除,可以把前面的“#”刪除,然後將22改為其它的端口,再保存退出即可。
說明:服務監聽能使用的端口範圍為0到65535,錯誤配置監聽端口會導致遠程桌面服務監聽失敗
3. 執行如下命令,重啟SSH服務。
/etc/init.d/sshd restart說明:也可執行service sshd restart命令,重啟SSH服務。
4. 使用Python自帶的Web服務器創建臨時的監聽端口進行測試。
python -m SimpleHTTPServer [$Port]
5. 如果ECS安全組規則中未放行修改後的端口號,需要將修改後的端口號添加到ECS安全組規則中。
說明:ECS的安全組規則中默認放行22端口。修改了遠程桌面的端口後,需要在安全組規則中放行修改後的端口號。
6. 通過上一步獲取的端口,參考如下命令,進行端口測試,判斷端口是否正常。
telnet [$IP] [$Port]
說明:
– [$IP]指Linux實例的IP地址。
– [$Port]指Linux實例的SSH端口號。
系統顯示類似如下,例如執行telnet 192.168.0.1 22命令,正常情況下,系統會返回服務端中SSH的軟件版本號。

安全組檢查
檢查安全組配置,是否允許遠程連接的端口。
- 參見查詢安全組規則,查看安全組規則。如果遠程連接端口沒有進行配置,則參見Linux實例啟用SSH服務後設置對應的安全組策略配置。
- 確認是否存在無法ping通ECS實例,在排除Iptables和網卡IP配置問題且回滾系統後,仍然無法ping通。可能是ECS實例安全組默認的公網規則被刪除,則需要重新配置ECS實例的安全組公網規則。如果不存在,則繼續下一步驟檢查。
原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/228352.html