服务器cpu异常抖动排查
问题背景
当天下午某某客户服务器cpu使用率80%报警持续10分钟左右后又恢复了,联系客户排查,有出现不同的应用服务器都有收到cpu报警,而且出现这样的抖动不止一次,每隔一段时间就会出现类似情况,在业务低峰的时候也出现过类似的报警
故障回顾:
告警提示”CPU使用率到达90%” 打开阿里云控制台,通过云监控发现在下午16:55-17:05左右发现云上机器某台服务器cpu使用率波动较大(先升后降),负载过高,网络流量达到一定峰值,磁盘io都出现上升后下降趋势、TCP连接数也是出现上升状态,后面恢复原来正常。现象如下图:
CPU先升后降使用率情况:使用率接近90%
系统平均负载先升后降情况:load超过25
网络流入流量:网络带宽流入流出先升后降
TCP 连接数情况:先升后降
磁盘io读写情况:先升后降
问题排查过程
1) 通过监控报警现象
以及出现的应用服务器,开始让客户确认是否有定时任务,或者大的拉取账单等业务导致,通过业务日志排查并没有相关的异常业务操作
2) 查看安全产品是否有受到攻击
查看安全产品目前没有相关这几个服务器报警的通知,查看外部slb流量都是正常流量,应该没有受到外部攻击。
3) 问题定位分析
当下一个时段出现报警的啥时候,ssh去连接服务器被拒绝的情况
登入机器后发现有大量ssh登入链接
cpu占用也是因为sshd服务引起的
4) 处理结论
经过上述分析,最终定位确认是ssh默认22端口被内网其他机器恶意破解登入攻击,客户的sshd服务都默认都是22端口,被攻击的服务器后来确认都是阿里云经典网络下的ecs
优化建议
根据服务器安全考虑,修改sshd默认22监听端口,还有就是迁移经典网络下的应用服务器到vpc网络下,确保内部服务器不被外部扫描到