在工作中碰到系统经常卡,而且有时候远程连接不上,从本地以及远程检查一下这个系统,发现有不明的系统进程。 初步判断就是可能中毒了!!!

解决过程: 1)在监控里检查一下这台服务器的带宽,发现服务器出去的带宽跑很高,所以才会导致远程连接卡甚至连接不上,这是一个原因。 为什么服务器出去的带宽这么高且超出了开通的带宽值?这个原因只能进入服务器系统里检查了。

2)远程进入系统里检查了下, ps -aux查到不明进程 ,立刻关闭它。

3)检查一下开机启动项:


#chkconfig --list | grep 3:on

服务器启动级别是3的,我检查一下了开机启动项,没有特别明显的服务。 然后检查了一下开机启动的一个文件

#more /etc/rc.local

看到这个文件里被添加了很多未知项,注释了它。

4)然后在远程连接这台服务器的时候,还是有些卡。 检查了一下系统的计划任务crond,使用crondtab -l 命令进行查看,看到很多注释行。

这些注释行与/etc/rc.local的内容差不多。最后备份下/var/spool/cron/root文件(也就是root下的crontab计划任务内容),就删除了crontab内容,然后停止crond任务,并chkconfig crond off 禁用它开机启动。

5)为了彻底清除危害,我检查了一下系统的登陆日志(last命令查看),看到除了root用户之外还有其它的用户登陆过。 检查了一下/etc/passwd ,看到有不明的用户,立刻用usermod -L XXX 禁用这些用户。 然后更新了下系统的复杂密码。

禁用/锁定用户登录系统的方法

1. usermod -L username 锁定用户
    usermod -U username 解锁
2. passwd -l username 锁定用户
    passwd -u username 解锁

3.修改用户的shell类型为/sbin/nologin(/etc/passwd文件里修改)

4.在/etc/下创建空文件nologin,这样就锁定了除root之外的全部用户