在運維工程師的日常工作中,經常需要登錄到服務器上對應用部署和維護,配置修改是很常規操作。但是在日常運維工作中,經常也會遭遇“滑鐵盧”,當出現無法遠程連接服務器的時候,我們需要沉着冷靜,耐心分析報錯的症結,方能更好的定位和排除問題。
今天百曉生就阿裡雲服務器ECS無法遠程連接的問題,分享一波運維必備的問題排查方法,認同小編的童鞋,文末【點贊 再看】哦~
說明:以下操作在CentOS 6.5 64位操作系統中進行過測試
檢查CPU負載、帶寬及内存使用情況确認是否存在CPU負載過高的情況
确認公網帶寬是否不足
無法遠程連接可能是公網帶寬不足導緻的,具體排查方法如下:
确認内存是否不足
遠程連接輸入用戶密碼登錄後,不能正常顯示桌面直接退出,也沒有錯誤信息。這種情況可能是服務器内存不足導緻的,需要查看一下服務器的内存使用情況。具體操作如下:
客戶端無法正常登錄時,先使用不同的SSH客戶端基于相同賬戶信息進行登錄測試。如果能正常登錄,則判斷是客戶端配置問題,需要對客戶端配置或軟件運行情況做排查分析。關于如何使用SSH客戶端登錄Linux實例,您可以參見遠程連接Linux實例。
步驟一:使用管理終端登錄實例
無論何種原因導緻無法遠程連接實例,請先嘗試用阿裡雲提供的遠程連接功能進行連接,确認實例還有響應,沒有完全宕機,然後再按原因分類進行故障排查。
步驟二:檢查客戶端本地網絡是否異常
确認是否存在用戶本地無法連接外網的故障。
步驟三:重啟實例
在确保登錄密碼正确的情況下,确認之前是否曾重置過密碼。檢查重置實例密碼後是否未重啟實例,如果存在實例密碼修改記錄,但無重啟實例記錄,則參考以下操作步驟重啟實例:
中間網絡包括網絡檢查和端口檢查。
網絡檢查
無法正常遠程連接Linux實例時,需要先檢查網絡是否正常。
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的軟件版本号。
安全組檢查
檢查安全組配置,是否允許遠程連接的端口。
關注百曉生,笑談雲計算
,
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!