SSH 連不上是新手最常遇到的坑。別急著重灌系統,按這份清單由外而內排查,多數情況幾分鐘就能解決。
1. 先分清卡在哪一步
- Connection timed out(逾時):根本連不上 → 網路/連接埠/防火牆問題。
- Connection refused(拒絕):能到機器但 SSH 沒在監聽 → 服務沒啟動或連接埠不對。
- Permission denied(拒絕認證):連上了但登入失敗 → 密碼/金鑰/使用者名稱問題。
2. 網路與連接埠(治 timeout)
- 先 ping IP 看機器在不在線(部分機房禁 ping,僅供參考)。
- 確認 SSH 連接埠(預設 22,有的機器改過),連線時 ssh -p 埠號 user@IP。
- 本地網路/電信業者是否封了 22,可換網路或請商家確認連接埠。
3. 防火牆(最常見元兇)
- 雲端防火牆:很多人忘了在雲端控制台的安全群組放行 SSH 連接埠——這是頭號原因。
- 系統防火牆:ufw / iptables 誤把 22 攔了。新手最容易在開 ufw 時先 deny 全部卻忘了放行 22 把自己關在門外。
4. 認證(治 Permission denied)
- 使用者名稱對不對:root 還是 ubuntu / admin?雲端廠商預設使用者各不同。
- 金鑰登入:私鑰權限要 chmod 600,且對應的公鑰在伺服器 ~/.ssh/authorized_keys 裡。
- 若伺服器關了密碼登入(PasswordAuthentication no),就只能用金鑰。
5. 還是連不上的保底做法
- 用雲端廠商的網頁版主控台 / VNC 直接進系統,繞過 SSH 改設定或放行連接埠。
- 被 fail2ban 因多次失敗暫時封了本機 IP?等幾分鐘或換 IP 再試。
- 實在不行用快照回滾或重置(注意先備份資料)。