简单记录一下阿里云服务器ssh登录不上的问题
今天早上来单位,先是给客代写了一份广发银行的招投标技术方案(应该是我在联通的最后一份技术方案了),然后开始学习docker,但当我向往常一样ssh登录我的阿里云服务器的时候,却出错了,出现下面提示:
ssh_exchange_identification: read: Connection reset by peer
日了狗了,我特么做错了什么?为啥会这样?先让我静一静,想想咋回事?
我第一时间想的是莫非是中间哪个阶段的网路不通了?于是乎拿ping试一下:
ping 101.*.*.*(阿里云服务器公网IP)
ICMP回显清晰可见,所以,网络肯定没问题。
我第二个想的可能问题是,我的云服务器上的sshd服务有问题或者防火墙上的问题。
随后,我通过阿里的控制台远程登录到终端。
先是用netstat看看sshd服务启没启:
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 4105/sshd
sshd没问题。我在ECS上试试ssh连接,也能连接上。
到目前为止,大致能够判断该服务器对外部的地址做了什么限制,有可能是设置了防火墙,有可能在/etc/hosts.deny中做了限制。
首先用iptables -L 看了一眼,你妹,只有docker设置的一些,其余啥也没有。然后把/etc/hosts.deny文件cat一下,也发现啥也没有。擦!!!!!
也就是说,我这个服务器本身没有做任何限制。那非常非常有可能,阿里对我的这个IP做了什么屏蔽。
经过在阿里文档查看,发现一个说法,说是阿里会根据流量异常对相应IP进行屏蔽。因为我们IP是公司这么多人共用一段连续的公网IP,所以这非常有可能。于是抱着试一试的态度,我在云盾-Ddos防护中-基础防护,对我的ECS实例,设置了白名单,把我现在的公网ip加进去了。
然后我再远程ssh一下,发现正常了!Bingo!
总结:遇到问题,先要冷静,然后仔细思考,逐步排查。虽然我在联通这2年不是做编程,但因为工作性质,使得我能够冷静地去排查故障,这也算是一个不小的收获。
微信分享/微信扫码阅读