这几天实验室服务器被入侵挖矿了,自己查了一些资料解决的问题,所以也借此机会来总结一下服务器被挖矿要怎么做。
实验室中的是在/root/bin/ethimer下的挖矿程序
首先第一步
输入nvidia-smi查看挖矿的进程,查看挖矿的pid(此处忘记截图了,用一下别的图代替)
在processes中可以看到,如果是挖矿程序,process name是不一样的,这里不是挖矿程序哈,是在跑代码,然后使用命令 pid为进程号
kill -9 PID
如果有安装top工具也可以用top命令查看
然后查看进程号所在的文件,进行删除(在kill命令之前查看),同样PID为进程号
ls -al /proc/PID/cwd
如果进行到这里之后挖矿程序不运行了,那恭喜你,服务器中毒不深,如果把挖矿程序结束掉了,把挖矿程序删了还是一直自动生成的话,那就需要修改定时脚本
删除定时脚本
切换到root用户(这个地方需要看挖矿软件的运行用户是哪个,一般是root)
su root
如果root用户忘记密码可以直接输入
passwd
输入两次密码就可以
然后运行crontab -l 查看运行的脚本文件
crontab -l
例如这样
截图那几个就是挖矿程序的脚本文件,需要把他们删了,如果你没有设置其他定时脚本,可以直接运行程序
crontab -r
直接删除全部定时任务脚本即可,如果有自己的定时任务,就把其他挖矿的定时任务脚本删了即可,这了可自行百度一下,很简单的
总结:一般的挖矿程序都会获取你的root权限,然后利用crontab进行定时任务,像这次中毒的就可以看到设置的每天的,每个月的以及重启的定时任务,然后让你怎么删也删不掉,我们只需要把定时任务删了应该就没啥问题了,这里就是建议:
- 把root密码设置复杂一点
- 尽量不用一些不知名的内网穿透,如果是图像服务器的建议就是内网使用吧,或者搭建自己的vps服务器
- 关闭一些不必要的端口
- 最重要的是搞个可以检测挖矿软件的程序,及时报警(这个我还在摸索)