排查 CentOS 系统上的 SSH 连接问题,可以按照以下步骤进行:
确保 SSH 服务正在运行: 使用以下命令检查 SSH 服务的状态:
sudo systemctl status sshd
如果服务未运行,请使用以下命令启动它:
sudo systemctl start sshd
检查防火墙设置: 确保防火墙允许 SSH 连接。使用以下命令检查防火墙规则:
sudo firewall-cmd --list-all
如果没有看到允许 SSH 连接的规则,请添加一个:
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
检查 SELinux 设置: 如果 SELinux 已启用并配置为阻止 SSH 连接,您需要更新 SELinux 策略。可以使用以下命令查看 SELinux 状态:
sestatus
如果需要更改 SELinux 设置,请编辑 /etc/selinux/config 文件,将 SELINUX=enforcing 更改为 SELINUX=disabled 或 SELINUX=permissive,然后重启系统。
检查 IP 地址和端口: 确保您尝试连接到正确的 IP 地址和端口。默认情况下,SSH 使用端口 22。您可以使用以下命令检查服务器的 IP 地址:
ip addr show
检查服务器日志:
查看服务器上的 SSH 日志以获取有关连接问题的详细信息。这些日志通常位于 /var/log/secure 或 /var/log/auth.log。使用以下命令查看日志:
sudo tail -f /var/log/secure
或
sudo tail -f /var/log/auth.log
检查客户端网络设置:
确保客户端计算机可以访问服务器的网络。尝试使用 ping 命令检查网络连通性:
ping <服务器IP地址>
检查 DNS 解析: 如果您使用的是域名而不是 IP 地址连接到服务器,请确保 DNS 解析正常工作。使用以下命令检查 DNS 解析:
nslookup <服务器域名>
按照这些步骤进行排查,您应该能够找到并解决 CentOS 系统上的 SSH 连接问题。如果仍然无法解决问题,请提供更多详细信息以便进一步分析。