
很多使用 Linux 搭建网站的站长都会遇到一个问题:服务器 CPU 占满、负载飙升、远程卡顿,登录一看,多出许多陌生进程,这大概率是服务器被入侵,植入了挖矿木马。
本文从排查、定位、清理、溯源、加固五个方面,完整讲解 Linux 服务器挖矿木马处理流程,适用于 CentOS、Ubuntu、Debian 等主流系统,也适合宝塔面板环境站长直接参考。
一、如何判断服务器是否被挖矿入侵
出现以下情况,基本可以判定为被植入挖矿程序:
1、CPU 长期 100%,且进程名异常(如 kdevtmpfsi、kinsing、xmrig 等)
2、服务器卡顿、SSH 连接缓慢、网站响应超时
3、服务器流量异常,出现大量对外连接
4、定时任务 crontab 里出现不明脚本
5、系统日志出现大量异常登录或异常执行记录
二、第一步:排查异常进程
先登录服务器,执行以下命令定位高占用进程:
top
观察 CPU 占用最高的进程,记录 PID 和进程名。
查看进程详细信息:
ps -ef | grep 进程名 ps -ef | grep 异常PID
查看进程对应的可执行文件路径:
ls -l /proc/PID/exe
很多木马会隐藏在 /tmp、/var/tmp、/dev/shm 等临时目录。
三、第二步:检查定时任务与开机自启
挖矿木马几乎都会写入定时任务,防止被杀掉。
1、查看当前用户定时任务
crontab -l
2、查看系统全局定时任务
ls /etc/cron* cat /etc/crontab ls /etc/cron.d/
3、查看开机自启服务
systemctl list-unit-files | grep enabled chkconfig --list
发现不明脚本或服务,立即注释或删除。
四、第三步:结束进程并删除木马文件
先结束恶意进程:
kill -9 异常PID
如果无法杀死,加参数强制结束:
pkill -f 进程名
然后删除对应文件,常见路径:
rm -rf /tmp/xxx rm -rf /var/tmp/xxx rm -rf /dev/shm/xxx rm -rf /root/.xxx
删除后再次 top 观察是否复现。
五、第四步:检查是否被植入后门与账号篡改
1、查看异常用户
cat /etc/passwd
删除陌生管理员账号。
2、查看 SSH 公钥是否被篡改
ps -ef | grep 进程名 ps -ef | grep 异常PID0
删除陌生公钥,避免被再次登录。
3、检查可疑网络连接
ps -ef | grep 进程名 ps -ef | grep 异常PID1
关闭异常对外连接的端口或 IP。
六、第五步:溯源入侵入口
常见入侵原因:
1、弱口令(SSH、面板、数据库密码过于简单)
2、网站程序漏洞(上传漏洞、文件包含、SQL 注入)
3、旧版 CMS 未打补丁(ZBlog、MetInfo 等)
4、数据库端口 3306 对公网开放
5、PHP 未禁用危险函数
找到入口后,必须立即修复,否则清理完还会再次被入侵。
七、第六步:后续安全加固建议
1、修改 SSH、宝塔面板、数据库密码为强密码
2、禁用 SSH 密码登录,改用密钥登录
3、限制 SSH 访问 IP,仅允许本机 IP 连接
4、关闭不必要端口,禁止数据库对外访问
5、PHP 禁用系统执行函数,开启网站防篡改
6、定期备份网站与数据库,开启自动备份
7、安装杀毒工具,定期扫描木马
八、总结
服务器被挖矿不要慌张,核心思路就是:
查进程 → 删文件 → 清定时任务 → 堵漏洞 → 强加固。
只要找到入侵入口并彻底修复,基本可以杜绝二次入侵。
平时做好安全防护,远比被入侵后再处理更重要,尤其是面向公网的生产服务器,安全永远是第一位。
标签: Linux 挖矿木马清理 服务器被入侵怎么办 kdevtmpfsi 删除 服务器 CPU100% Linux 安全加固


