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 再试。
- 实在不行用快照回滚或重置(注意先备份数据)。