在 CentOS 系统中,可以通过以下几种方法检查 SSH 服务以及系统的状态:
你可以使用 systemctl
命令来检查 SSH 服务的状态:
sudo systemctl status sshd
如果 SSH 服务正在运行,你会看到类似以下的输出:
● sshd.service - OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
Active: active (running) since ...
如果服务没有运行,可以使用以下命令启动它:
sudo systemctl start sshd
要确保 SSH 服务在系统启动时自动运行,可以使用:
sudo systemctl enable sshd
确保防火墙允许 SSH 连接。CentOS 默认使用 firewalld
,你可以检查 SSH 是否在防火墙的允许列表中:
sudo firewall-cmd --list-all
如果需要,可以添加 SSH 端口(默认是 22):
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
如果 SELinux 处于 enforcing 模式,可能会阻止 SSH 连接。你可以临时将其设置为 permissive 模式以进行测试:
sudo setenforce 0
要永久更改 SELinux 模式,请编辑 /etc/selinux/config
文件,将 SELINUX=enforcing
改为 SELINUX=permissive
,然后重启系统。
确保你的服务器可以访问网络,并且可以从客户端 ping 通:
ping your_server_ip
如果仍然无法连接,可以查看 SSH 的日志以获取更多信息:
sudo tail -f /var/log/secure
这些步骤应该可以帮助你诊断和解决 CentOS 系统上的 SSH 连接问题。