如何检查linux ssh 状态

Q我怎么确认 Linux 上的 SSH 服务有没有在运行?当我想远程登录服务器时,应该用什么命令判断 ssh 服务当前是否已启动?

A查看服务运行状态

可以使用 systemctl status sshd 或 systemctl status ssh 来查看服务状态。若状态中显示 active (running),说明 SSH 服务正在运行。不同发行版的服务名可能不同,常见的是 sshd。

Q我怎么判断 Linux 的 SSH 端口有没有在监听?如果服务看起来正常,我还想确认 22 端口是否真的在对外提供连接,应该怎么查?

A检查端口监听情况

可以执行 ss -tlnp | grep :22,查看 22 端口是否处于监听状态,并确认对应进程是否为 sshd。也可以用 netstat -tlnp | grep :22,但很多系统更推荐使用 ss。

Q我连接 SSH 失败时,怎么快速定位是服务问题还是网络问题?当远程登录报错时,我想判断是 ssh 服务没起来,还是防火墙、端口、网络配置有问题,该怎么排查?

A分层排查连接链路

可以先确认 sshd 是否运行,再检查端口是否监听,接着验证防火墙是否放行 22 端口,最后测试本机到目标主机的网络连通性。日志也很关键,journalctl -u sshd 或 /var/log/auth.log 往往能提供失败原因。

Q我想知道 SSH 是否允许密码登录,应该看哪里?有些机器只能用密钥登录,我想确认当前服务器是不是禁止了密码方式,该怎么检查?

A查看 SSH 配置项

可以检查 /etc/ssh/sshd_config 中的 PasswordAuthentication 配置项。若值为 no,表示禁止密码登录;若为 yes,表示允许密码登录。修改后需要重载或重启 sshd 才会生效。

Copyright © 2088 网络游戏活动中心 - 最新游戏活动汇总 All Rights Reserved.
友情链接