本文主要是介绍ssh连接时断时续,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
最近发现一台机器经常ssh连接不过去,多连几次就又可以连上去了。有点空就开始研究下为啥。
首先看下网络是不是好的,那就抓包,用tcpdump -i eth0 host ip命令抓包,发现只要在其他机器上发起ssh连接,这台机器上都能收到数据包。不同的地方是,在其他机器连接不上的时候,本机的回包序号不对。在其他机器能连接的时候,本机的回包序号是正确的。这个可能就是openssh的问题了。那就重装openssh吧。
删除的时候要找删除的包,使用rpm -qa openssh* 找到三个,开始删除。
yum remove openssh-7.4p1-11.el7.x86_64
yum remove openssh-server-7.4p1-11.el7.x86_64
yum remove openssh-clients-7.4p1-11.el7.x86_64
用yum删除的时候就发现有问题了。提示说删除失败:
看下这个文件的属性。删除不掉的话一般都是chattr加了属性了,用lsattr看下:
看到有个i的属性。另外,这个lsattr和chattr也有可能被替换的,如果lsattr和chattr被替换了,就需要从其他机器拷正确的文件过来使用了。
这样看这台机器是被黑进来做了其他事情了。看下文件修改时间,再查找下那个时间段还有没有文件被修改:
看起来好多文件都被改过了。
那就一个个删除吧,删除不掉的用chattr改下文件属性再删。用lsattr看属性,多i的就-i,多a的就-a。
chattr -i /usr/bin/sshd
这里还有个ext4.service的服务,那先systemctl stop ext4.service停止,再systemctl disable ext4.service删除开机启动项,最后删除这个文件就可以了。
find /usr -type f -newermt '2021-10-19 04:30:00' ! -newermt '2021-10-19 05:30:00' |xargs rm
找到的都删了吧。除了/usr,/etc下也有,也删掉。
删了之后再卸载openssh,重新安装。
这篇关于ssh连接时断时续的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!