运维登录服务器时连接刚建立就被重置,换一台机器同样如此,可 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 之后忘记改白名单是最常见的自锁原因;运维入口地址要提前加进白名单并记录。线上能稳定复现的问题都不算难,难的是只在大流量下才出现的那种。