云主机终端连不上,第一反应往往是“机器是不是挂了”——先别急。多数时候机器运行得好好的,网站能打开、ping 也通,就是 SSH 窗口一开卡住不动,或者弹出一句 Permission denied。这种局面下重装系统、重启实例,纯属给自己找活干。这类问题基本就落在两层:一层在服务端那头,一层在你自己这头。把两层分开看,排查能省一大半时间。

云主机终端连不上,先别急着重启
重启这事我劝你先忍住。一来重启会把现场洗掉,日志里的报错、进程的异常状态,重启完就没了;二来如果是安全组没放行、密钥权限不对这类毛病,重启一百次也还是那样。先做两件小事:在本地 ping 一下公网 IP,再用浏览器打开一下站点。ping 不通和 ping 通但 SSH 进不去,是完全两条路,别混着查,混着查最容易把自己绕进去。
第一层:服务端,sshd 有没有在跑
SSH 能连上,靠的是 sshd 这个后台进程。磁盘写满、系统更新完没自启、手改配置少打一个字符,都可能让它挂掉或者起不来。这时候走云平台网页上的 VNC 控制台进去,敲 systemctl status sshd 看状态。CentOS/RHEL 系的服务名是 sshd,Debian/Ubuntu 系是 ssh,这个别搞混,名字敲错会误以为服务根本没装。
状态显示 failed 的话,先用 sshd -t 校验配置文件语法,它会指出哪一行有问题。改过 /etc/ssh/sshd_config 的机器,Port、PermitRootLogin、PasswordAuthentication 这几行最容易出事。还有个低级但高频的:改完配置忘了 systemctl restart sshd,然后一口咬定改了没用。配置文件改了不重启,等于没改。
端口这道门有两道,别只查一半
22 端口不通,很多人只翻系统里的 firewalld、ufw,忘了云平台控制台里还有一层安全组。入方向规则没放行 22,系统里开成什么样都白搭;反过来安全组放行了,系统防火墙拦着,照样进不来。这两道门得一起看,只看一道,很容易得出“都开了啊”的错误结论。
查监听用 ss -lntp,看 22 端口有没有 LISTEN、监听的是 0.0.0.0 还是 127.0.0.1。只监听回环地址的话,外面永远连不上,这在改过 ListenAddress 的机器上不算少见。要是把默认端口换成了别的,客户端记得带 -p 指定,不然连的其实是空气。
第二层:客户端这头,密钥和用户名
服务端查完一切正常,还是连不上,就该低头看看自己这头。报 Permission denied (publickey) 的,多半是私钥文件权限太松——Linux 和 macOS 上 chmod 600 就好,别放在共享目录或者同步盘里。格式也得对上,pem 和 ppk 不是一回事,PuTTY 得先转一道再用。
用户名更是个隐形坑。Ubuntu 镜像默认用户是 ubuntu,Debian 是 debian,CentOS 常见 root 或 centos,各家云厂商的镜像还可能有细微差别,具体以服务商或官方页面说明为准。拿着 root 去登 Ubuntu,报错能让你查一下午。
分不清哪层,三条命令切一刀
ping 一下 IP,定的是网络到不到;nc -vz IP 22 或者 telnet IP 22,定的是端口开不开;ssh -vvv user@IP,看的是握手卡在哪一步。三条跑完,方向基本就出来了。ping 不通,那是网络层的事,跟 sshd 一点关系都没有;ping 通但端口不通,往安全组、防火墙、监听地址上找;端口通但认证失败,就是账号密钥的活。这套顺序别乱,乱着来最费时间。
云主机终端的日志,比瞎猜快得多
日志这东西很多人懒得多看一眼,其实它最省事。RHEL 系看 /var/log/secure,Debian 系看 /var/log/auth.log,失败的登录尝试、被拒的原因基本都在里头。刷出一大片 Failed password 来自某个陌生 IP,说明机器正在被扫;如果 fail2ban 之类的在跑,很可能你自己的 IP 已经被封了——换个手机热点一试就知道,别在一台机器上死磕。
last 看登录成功的记录,lastb 看失败的记录,两个命令花不了几秒,却能确认到底是“根本没人进来过”,还是“进来过又断了”。这两种情况后面要查的东西完全不一样。
控制台能进、SSH 进不去,说明什么
网页 VNC 敲命令一切正常,SSH 就是连不上,这基本能断定系统本身没崩,问题卡在网络或 sshd 配置这一层,重点查安全组、监听地址、服务状态。反过来,VNC 也进不去、ping 也没反应,那才轮到怀疑实例本身或者平台侧,这时候提工单问,比一个人对着黑屏强,处理方式以服务商说明为准。
改配置前,先给自己留条后路
动 sshd_config 之前,另开一个 SSH 窗口挂着别关,改完重启服务,用新窗口验证能进,再关旧的。这个习惯能挡掉大部分“改完把自己锁在门外”的事故。云平台的 VNC 控制台就是最后那条后路,别等出事才想起来它还在菜单里躺着。
下次再碰上连不上,顺序可以这么走:先 ping、再探端口、再看服务状态、最后查客户端密钥和用户名,一层一层往下剥。大多数情况下,问题就老老实实待在那一层里,改一个字符、放行一条规则就好了,根本用不着重装系统那么大的动作。
【版权声明】:本站内容若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!