从客户端开始
把 user 和 server.example 替换为实际账户和主机。Connection refused 表示连接被主动拒绝;timeout 可能涉及路由、过滤或目标不响应。Permission denied 表示认证遭拒。详细日志可能含身份信息,分享前请脱敏。
ssh -vvv -o ConnectTimeout=5 -p 22 user@server.example
ssh -4 -o ConnectTimeout=5 user@server.example
ssh -6 -o ConnectTimeout=5 user@server.example通过控制台检查 Linux
在 Ubuntu 或 Debian 检查 ssh 服务、监听端口、配置语法和日志。确认实际端口及双向防火墙规则。timeout 不证明机器已关机。其他发行版可能使用 sshd.service。修改时保留控制台访问。
sudo systemctl status ssh.service
sudo ss -lntp
sudo /usr/sbin/sshd -t
sudo journalctl -u ssh.service -n 50 --no-pager修复认证而不削弱信任
确认用户名、选定的私钥及服务器 authorized_keys 的所有者和权限。IdentitiesOnly 可测试指定密钥。主机密钥变化应通过独立可信渠道核实;不要关闭 StrictHostKeyChecking 或盲目删除 known_hosts。CH-J Diagnostics 可在不登录 SSH 的情况下测试 TCP。
ssh -o IdentitiesOnly=yes -i ~/.ssh/id_ed25519_chj user@server.example
ssh-keygen -F server.example