CentOS7查杀nanoWath挖矿木马

前几天在查看服务器时状态时发现cpu占用率达到了103%

这个VPS主要是拿来玩玩,平时上面并没有什么大的服务再运行,不可能会占满CPU的;用shell客户端连上VPS,执行ps aux,其中一个叫nanoWatch的进程cpu占用率达到了99.5%

直接杀掉这个进程kill -9 17305,再检查进程,没发现异常

过了没几分钟,cpu占用又满了,查看进程,这个进程又出现了;

找到/tmp/nanoWatch这个文件,删掉这个文件,再杀掉进程,过了几分钟,进进程再次出现。

我怀疑是定时启动的任务, crontab -l查看cron计划任务,显示出来了两个定时任务,每5分钟和7分钟执行一次下载文件,我手动把这个文件下下来,是一个脚本

删除定时任务crontab -r,删掉文件,杀掉进程,结束了


过了两天,又出现CPU占用异常。

我之前一直是用root用户并使用20端口进行ssh连接,这是非常不安全的行为,很容易被端口扫描暴力破解密码登录服务器。简单的解决办法如下

[TOC]

修改ssh连接端口

用 root 用户进入 /etc/ssh/

1
2
3
4
cd /etc/ssh/
#用 vi 打开 sshd_config 文件
vim sshd_config
#添加端口20022(22号是默认端口,注释掉也是默认开启的),并解开22端口注释

1
2
3
4
5
6
7
8
9
#重启ssh 
systemctl restart sshd
#查看防火墙规则
firewall-cmd --permanent --list-port
#向防火墙中添加端口
firewall-cmd --zone=public --add-port=20022/tcp --permanent
reaload
#重新加载防火墙规则
firewall-cmd --reload

1
2
#查看20022端口是否添加成功
firewall-cmd --zone=public --query-port=20022/tcp

断开ssh连接,换用20022端口连接
修改/etc/ssh/sshd_config22号端口注释掉

1
2
3
4
#重启ssh
systemctl restart sshd
#查看ssh监听的端口
ss -tnlp|grep ssh

禁用root登入,使用普通用户登入

1
2
3
4
5
#先创建一个普通用户test,同时给test用户设置密码
adduser test
passwd test
#接着禁用root登录(修改sshd_config文件)
vi /etc/ssh/sshd_config

1
2
#重启ssh
Systemctl restart sshd.service