kswapd0进程在CentOS下CPU占用率过高

  • 问题并不是内存不够那么简单
    • 我自己解决问题的过程记录

问题并不是内存不够那么简单

今早到公司,开晨会,发现华为云上的测试环境应用访问不到了.晨会开完后,就连上了测试环境进行问题排查.发现了一个名为 kswapd0 的进程,CPU占用率300%多…

其实这个问题前些天也出现过,当时在CSDN中找答案,发现都说是内存不够用了的问题. 当时有过怀疑是木马或者病毒,但没有深究. 因为那段时间,服务器密码也不知道是被谁改了,出过一些问题…

但这次又是这个进程在作妖,我就意识到了问题肯定就不是内存不够杀掉进程那么简单了. 毕竟这台服务器4核心还有16G的内存,平时占用5G都到不了,即使CPU300%多,内存也还是足够的! 于是就准备根据这个 kswapd0 进程开始深挖,在CSDN上找了N多资料…最终在一个评论下根据连接找到了一些线索.

这里贴上链接:https://blog.csdn.net/jzz601264258/article/details/105850816 (这是我找到的第一个关于这个进程是木马的一些描述和解决方案)
后面还有
https://blog.csdn.net/adsszl_no_one/article/details/105344467
以及腾讯电脑管家的文章:
https://www.freebuf.com/articles/network/205384.html

我自己解决问题的过程记录

因为当时测试小姐姐需要开始今天的测试工作,所以我上来就先把 kswapd0 进程干掉了(不干掉的话,应用虽然能起来,但是访问直接报500).然后重启完应用后,再查的上面那些资料

这里建议先找到木马所在的位置然后再干掉进程
(命令里面的括号都只是做一个补充说明,并不是需要输入的命令)

0. top
当时top命令查看到的信息

1. ps -ef|grep kswapd0
执行完后可以看到进程的pid,由于我这上来就直接把进程给干掉了…所以没有截图,我用rsync的代替吧,道理一样的

这里可以看到rsync 的 pid 为 19637,以及程序所在的目录信为 /tmp/.X25-unix

2. cd /tmp/.X25-unix

找到位置后就好办了,开始一个个的关掉进程

3. kill -9 9939(kswapd0的PID)
结束 kswapd0 程序运行,这里可以参考第一步中 top 命令查看到的PID

4. kill -9 19637(rsync的PID)
通过上面链接可以知道rsync这个工具也是被挖矿程序所利用的,所以也直接kill

进程关掉后,CPU占用率就下来了.

5. rm -rf /tmp/.X25-unix
接下来再来删除挖矿程序所在的 .X25-unix 这个文件夹
(rm -rf 命令使用的时候一定小心! 按回车前,心里默念三遍Hello world,每念一遍就确认一遍,千万别把这命令给整错了!!)

6. crontab -l
因为前些天这个进程我关掉过,然后这次又冒出来了,当时我猜测应该是有定时任务的,参考上面资料也确实有定时任务,使用 crontab -l 查看定时任务

7. cd /root/.configrc
可以看到定时任务除了 /tmp/.X25-unix 目录外,还有一个地方目录很醒目,那就是 /root/.configrc


看到这个时间… 以及 a 目录下的kswapd0 毫不犹豫直接rm -rf干掉整个**.configrc**目录

8. rm -rf /root/.configrc
删掉**/root/.configrc** 目录,再次提醒!!!(rm -rf 命令使用的时候一定小心! 按回车前,心里默念三遍Hello world,每念一遍就确认一遍,千万别把这命令给整错了!!)

9. find / -name kswapd0
查找,看哪里还有kswapd0的文件,发现 /dev/shm/ 下还有,截图…当时没截…

10. rm -rf /dev/shm/*
删掉 /dev/shm/ 目录下的所有文件

11. crontab -e
程序感觉都找到了并清理干净了,现在就再来处理定时任务吧.
crontab -e编辑 定时任务,输入完回车后,按 i 键,跟vim编辑类似,删掉里面全部内容后, 按 Esc 键,再输入 wd 保存并退出.

12. vi /root/.ssh/authorized_keys
这块找了一些资料说会修改公钥,发现自己文件内容和别人的一模一样,所以,清空里面所有内容后wq保存并退出
参考别人写的一些分析

到这里感觉应该服务器就没什么问题了,但是看腾讯电脑管家那篇文章说的,应该是利用弱口令进行暴力破解控制的服务器.

13.所以最后一步,修改服务器密码,越难越好!

14.关于为什么服务器会被植入木马的一些猜测
第一点就是密码被弱口令暴力破解
但是其实我们这有几台服务器密码都一样的,不应该只有这台被入侵了… 感觉有些不合理.

第二点猜测是redis的原因.
几台服务器密码都是一样的,其他服务器没事,就这台出了问题. 并且从木马执行的命令来看,它关了nginx,tomcat之类的进程,然后重启后启动了redis…
我重启tomcat应用的时候才注意到,redis服务一直是开着的. 所以很有可能跟我redis没设置密码,以及可以被任何公网IP访问到有关.
参考redis bind的误区
去掉 bind 前面的 # 号,启用 bind 127.0.0.1 配置,然后kill掉redis进程,并重启redis服务.

我这里这台测试服务器是华为云上的,实施小伙伴之前在第一次发现密码被改了之后就给22端口加上了一些安全策略,比如22端口只能特定的IP地址才能连接.

这个截图是我自己的账号截的,反正大概就是这个意思,限制能够通过22端口来进行远程控制的IP地址.

第一篇博客文章,主要用来记录一下自己处理 kswapd0 挖矿程序的一次经历.

kswapd0进程在CentOS下CPU占用率过高相关推荐

  1. centos cpu排查_Linux/CENTOS 系统 CPU 占用率较高负载较高问题排查思路 - 沃森博客...

    如果阿里云服务器 ECS Linux 系统的 CPU 持续跑高,则会对系统稳定性和业务运行造成影响.本文对 CPU 占用率较高问题的排查分析做简要说明.注意:本文相关配置及说明已在 CentOS 6. ...

  2. CPU占用率过高和OOM场景下如何排查问题

    本文来说下CPU占用率过高和OOM场景下如何排查问题 文章目录 CPU占用率过高 OOM场景下如何排查问题 CPU占用率过高 CPU占用率过高 CPU占用率过高可以通过top命令去看占用CPU最多的J ...

  3. linux cpu不足处理运维,Linux运维知识之Linux服务器CPU占用率较高问题排查思路

    本文主要向大家介绍了Linux运维知识之Linux服务器CPU占用率较高问题排查思路,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助. 注意:本文相关配置及说明已在 CentOS  ...

  4. compattelrunner.exe占用磁盘过高_Linux 系统 CPU 占用率太高?

    在使用Linux 系统时,经常会遇到 CPU 占用率太高的问题.此篇文章教你如何解决,排查解决的思路是什么 CPU负载查看方法: 使用vmstat查看系统维度的CPU负载 使用top查看进程维度的CP ...

  5. kswapd CPU占用率过高

    kswapd0 CPU占用率过高问题 解决方法: top P #直接输入大写p #查看排在第一位的kswapd进程 cd /proc/进程id ls -l exe #查看软链真实目录 cd /var/ ...

  6. window服务器cpu过高的排查_线上服务器发生CPU占用率过高应该如何排查并定位问题?...

    国外开发者平台 HankerRank 发布的 2018 年开发者技能调查报告中有一项关于"雇主最看重哪些核心能力"的调查,结果显示如下: 排名前几的比较受重视的能力分别为:解决问题 ...

  7. 内存和CPU占用率过高,该怎么办?

    转载自戴尔 公众号 戴尔 今天 " 电脑的内存和CPU都达到非常大的占用率时 就很可能会导致系统崩溃 " 本期视频中,小编将指导大家如何尽量有效的减少内存和CPU的占用率. 尝试进 ...

  8. 有没有命令让服务器cpu占用升高,怎样通过iisapp命令查找pid来解决IIS的cpu占用率过高问题...

    怎样通过iisapp命令查找pid来解决IIS的cpu占用率过高问题 更新时间:2009年03月01日 23:44:35   作者: 有些时候发现服务器的一些iis进程占用资源比较大,用下面的方法可以 ...

  9. 服务器中木马病毒处理(CPU占用率很高)处理办法

    参考:https://blog.csdn.net/wkfyynh/article/details/105206990 记录一下这个过程,方便后来人使用.如果遇到权限问题,在所有执行命令前使用sudo ...

最新文章

  1. 如何评价LoRa这项应用于低功率长距离场景的物联网传输技术?
  2. Linux根文件系统的文件镜像,构建小型Linux根文件系统镜像
  3. 数据库原理与应用(SQL Server)笔记 第七章 流程控制语句、系统内置函数
  4. 《编程原本 》一3.3 程序变换
  5. XStream – XStreamely使用Java中的XML数据的简便方法
  6. mysql5.6 memcached_MySQL 5.6 安装配置InnoDB memcached Plugin
  7. LTE物理传输资源(2)-频带、信道带宽和频点号EARFCN
  8. Courier:Dropbox 基于gRPC 的 RPC 框架开发过程
  9. classpath和classpath*区别
  10. 玩转Bootstrap(JS插件篇)-第1章 模态弹出框 :1-2 动画过渡
  11. 《高翔视觉slam十四讲》学习笔记 第四讲 李群与李代数
  12. 随风潜入夜,润物细无声
  13. 百度文库文章下载三个方法
  14. APPCLOUD STUDIO结合 手机APPLOADER进行模拟开发
  15. 抽样分布(卡方分布、t分布、F分布)
  16. Log4J漏洞补丁(ArcGIS Enterprise适用)
  17. 设计师的配色理论:你真懂颜色了吗?
  18. 计算机科学与技术考研双非,2021西安电子科技大学计算机科学与技术考研真题经验参考书...
  19. 简单有效又有用的关闭antimalware service executable的方法·备份记录
  20. 谷歌提供的地理位置信息和反地理位置信息

热门文章

  1. MySQL重置索引列
  2. SpringBoot学习笔记1 框架及基础配置
  3. 2020年的智能农业:物联网传感器如何创造更高效的精准农业产业
  4. 【万里征程——Windows App开发】画笔和图像
  5. ARP协议和RARP协议
  6. Map集合概述、冒泡排序
  7. 漏洞挖掘 | 简单高效的模糊测试Fuzzing
  8. abp angular 和mvc_ABP+Angular框架搭建踩坑记
  9. The driver has not received any packets from the server.
  10. 数据特征分析技能—— 相关性检验