最近写了一个项目,接到客户的反馈,说加载速度卡顿。
按说博主的代码虽然不是最优的,但是按现在机器的配置,优化代码带来的响应时间影响也是微乎其微,不过既然有卡顿的问题,就开始着手进行优化。
先是优化了加载性能的问题,代码上做了处理后,加载还是不快。
后来测试发现,同一个接口,我们测试服务器的响应速度竟还比客户的服务器的响应速度快5倍,但是我们服务器的硬件配置是远低于客户的服务器配置的。
就检查了一下带宽,响应时间,硬盘,cpu占用等。
top命令发现客户服务器的8核cpu,被wnTKYg,xmrt这2个进程分别以7核699%和1核100%占满。
网上搜了一下,发现这是一个挖矿的进程,挖门罗币(比特币的一种衍生)的进程。
这个进程有可能是病毒导致的,之前网上流传过一段时间这个挖矿的木马,当然也不排除有人在用这台服务器挖矿。跟客户确认了一下,确实没有人在用这台服务器。
着手解决问题,说一下解决步骤,由于不是便解决边记录有一些截图缺少了。
1 查看cpu占用率(%CPU)最高的进程号(PID)
2 查看这个进程的启动时间在2018年1月11号 21:27:34
去找最近的操作日志文件cat /var/log/cron-20180114
发现了这两个操作,访问了一下这个文件 http://218.248.40.228:8443/i.sh
看起是是个定时任务,先搁置了没管他。
查了下IP地址,印度??
3杀掉这个进程
杀完进程后发现没过两分钟,进程又自动重启,开始找这两个进程
cd /
find -name * wnTKYg*
在/tmp文件夹下发现了这个文件,删除之。
删除第2步发现的文件。
/var/spool/cron/root
/var/spool/cron/crontabs/root
杀死ddg.2021这种可疑进程。
cpu占用下来了,再访问网站,速度快了不是一点半点。
结束。