运维登录服务器时连接刚建立就被重置,换一台机器同样如此,可 ping 和网页访问都正常。

真正麻烦的地方在于,几个原因的现象几乎一样。防护工具把来源地址加入了封禁列表。少数情况下是云安全组或者主机防火墙丢弃了该来源。

少数情况下是服务端的最大连接数已被占满。

动手时先看防护工具的封禁列表

fail2ban-client status sshd

接着确认本机防火墙规则

iptables -S | grep -E 'DROP|REJECT'

解除自己的地址封禁

fail2ban-client set sshd unbanip 你的IP

等前面都确认过,再核对连接数上限

grep -E 'MaxStartups|MaxSessions' /etc/ssh/sshd_config

隔了一天再看,现象没变,说明不是偶发。

那几天正好在做别的变更,先把时间线对齐才敢动手。

别只看报错消失,验证要多做一步。再次登录可以正常建立连接,封禁列表里不再出现该地址。

容易忽略的是,换 IP 之后忘记改白名单是最常见的自锁原因;运维入口地址要提前加进白名单并记录。线上能稳定复现的问题都不算难,难的是只在大流量下才出现的那种。

作者 9823189