Xshell错误无法连接,但服务器ssh功能正常解决方法
问题描述:
今天打开虚拟机后使用Xshell来连接虚拟机,结果连接不上,Xshell显示连接超时。
原因分析:
第一步:
对服务器进行排查使用 ps -ef | grep ssh来查看

很明显ssh是启动的,那会不会是端口的问题呢?

端口也是开放的,会不会是网络问题?

可以ping通外网和宿主机。
通过命令来查看ssh服务的日志文件,ubuntu上ssh的日志文件在===日志位置grep sshd /var/log/auth.log
结果只显示连接成功的日志看不到其他信息。
我试这使用虚拟机ssh连接她自己,结果22端口错误显示密钥错误,我cd到home路径进入用户目录找到.ssh目录使用命令
ssh-keygen -R 192.168.0.116
来重新加载用户密钥,并将之前的密钥删除
再用命令
service ssh restart
//重启 ssh 服务
ssh 用户@目标IP地址
结果成功连接
但是使用Xshell还是连接不上
解决方案:
我想到命令ssh-keygen -R 目标ip地址,的原理是重现申请密钥
,Xshell连接目标服务器也是要密钥的,那我可以删除Xshell保存的密钥,通过重新连接来重新获取密钥,来达到重新连接的目的吧?
说干就干,打开Xshell

点击工具选择
主机密钥管理者

选择将之前连接的密钥删除,并重新连接

果然成功
所以,章北海父亲说的话没错,不管什么时候都要多想,多去思考。
当Xshell提示连接超时,但服务器SSH功能正常时,问题可能出在密钥上。通过检查ssh服务状态、端口和网络,发现并非这些原因。在Ubuntu的ssh日志中未找到问题线索,但在尝试使用ssh命令连接时发现密钥错误。通过删除并重新生成用户密钥,然后重启ssh服务,可以解决问题。在Xshell中删除主机密钥并重新连接,最终成功修复了连接问题。

1235

被折叠的 条评论
为什么被折叠?



