服务器挖矿定时任务彻底清除:从查看到根除完整教程

怎么确认服务器被植入了挖矿定时任务

服务器被植入挖矿程序后,最明显的特征是 CPU 或内存长时间占用过高,且网络连接异常增多。
你可以逐条检查以下位置来确认是否存在恶意定时任务:

  • 运行 crontab -l 查看当前用户的定时任务列表,注意里面是否包含不认识的下载、执行脚本命令,例如 wgetcurl 到未知域名接着执行 .sh 文件。
  • 检查系统级定时任务:cat /etc/crontabls /etc/cron.d/ls /var/spool/cron/。挖矿脚本常隐藏在这些目录中,文件名可能伪装成系统服务名称,比如 sysupdatentpdate 等。
  • 查看启动脚本:cat /etc/rc.localls /etc/init.d/,挖矿程序可能会通过 @reboot 或 init 脚本实现开机自启。

如果发现可疑命令,先不要删除,用笔记录下完整命令和路径,后续需要据此反向定位恶意文件。

第一步:紧急隔离与进程查杀

在清理定时任务之前,需要先让挖矿进程停止运行,避免一边清理一边又被重新拉起。

  1. 断开外网(可选但推荐):如果服务器能短暂断网,用 iptables -I INPUT 1 -j DROPiptables -I OUTPUT 1 -j DROP 暂时禁止所有网络通信,防止挖矿程序继续投毒或向外回传数据。
  2. 找到挖矿进程 PID:运行 top -c 并按 Shift+P 按 CPU 排序,找到 CPU 使用率异常高的进程,记下 PID 和完整命令路径。也可以使用 ps aux | grep -i minerps aux | grep -i xmrig 等常见挖矿关键字过滤。
  3. 杀死进程并锁定文件:执行 kill -9 PID 直接结束进程。注意:很多挖矿进程会监视自身,被杀死后立即重启,所以杀死进程只是临时手段,关键在于后面清理定时任务和脚本。

第二步:彻底清理定时任务与回弹脚本

确认进程被杀死后,迅速清理所有恶意定时任务,防止重启后再次被拉起。

  • 清除当前用户定时任务crontab -r 会清空所有定时任务;如果你只想删除特定行,可以用 crontab -e 手动编辑删除。
  • 清除系统定时任务文件:删除 /etc/cron.d/ 下可疑文件(如 rm -f /etc/cron.d/system_update),并编辑 /etc/crontab 删除恶意行。同时检查 /var/spool/cron/ 下所有用户的定时任务文件。
  • 清理启动脚本:编辑 /etc/rc.local 去掉可疑启动条目;检查 /etc/init.d//etc/systemd/system/ 下是否有恶意 service 文件,用 systemctl disable 服务名 停用并删除。

然后根据第一步记录的命令路径,使用 ls -la 找出这些恶意文件的创建时间、属主。
接着用 find / -name '可疑文件名' 2>/dev/null 查找是否有副本或备份,找到后全部删除。

第三步:清除回弹脚本与持久化文件

挖矿程序常通过隐藏目录(如 /tmp/var/tmp/dev/shm)存放回弹脚本。
这些脚本可能被命名为 .bashrca.shkworker(伪装成系统进程名)等。

  • 切换到 /tmp/var/tmp,执行 ls -lt 按时间排序,重点检查近期创建的可执行文件或 .sh 脚本。
  • 检查 /dev/shm/(内存文件系统),挖矿程序经常利用它隐藏文件,因为重启后会自动消失,但运行期间仍会占用资源。用 ls -la /dev/shm/ 查看,删除可疑文件。
  • 检查用户目录下的隐藏文件:ls -la ~/.*,尤其注意 .bashrc.profile.ssh/authorized_keys 是否被篡改添加了恶意命令。

删除所有可疑文件后,再到 /etc/ld.so.preload 检查是否被加载恶意库(通常为空,若不为空需谨慎处理)。

第四步:强化服务器基础防护

清理干净后,如果不做防护,服务器可能在几小时内再次被入侵。
建议执行以下操作:

  • 修改所有用户密码(尤其 root 和常用管理用户),密码复杂度要包含大小写、数字和特殊字符。
  • 检查 SSH 密钥cat ~/.ssh/authorized_keys 确认只保留你本人的公钥。
  • 更新系统补丁yum updateapt update && apt upgrade,修复已知漏洞。
  • 配置防火墙:只开放必要端口(如 80、443、22 指定 IP),使用 ufwiptables。例如 ufw default deny incoming && ufw allow 22/tcp
  • 安装安全软件:考虑安装 ClamAV 或 LMD(Linux Malware Detect)进行全盘扫描查杀。

验证清理效果与常见问题

验证方法

  • 等待 10~15 分钟,再次运行 top -c,观察 CPU 是否回归正常。
  • 执行 crontab -l 确认定时任务已清零。
  • 检查网络连接:netstat -antp | grep ESTABLISHED,看是否还有连向陌生 IP 的持久连接。
  • 重启服务器后再次检查,确认没有自动回弹。

常见问题

  • Q:清理后几小时又出现挖矿进程?

A:说明还有隐藏定时任务或守护脚本未被删除。
请重新检查 /etc/cron.d//var/spool/cron/ 以及 systemd 定时器(systemctl list-timers)。

  • Q:误删了系统关键文件怎么办?

A:操作前最好先备份。
如果误删,尽快从备份恢复或重装对应软件包。

  • Q:是否一定要重装系统?

A:如果清理后仍有残留,或关键文件已被篡改,建议备份数据后重装系统,这是最彻底的方式。

通过以上步骤,你可以彻底清除服务器挖矿定时任务,并大幅降低再次被植入的风险。
如果你在清理过程中遇到其他异常,也欢迎在评论区留言交流。

分享到:
上一篇
跨境独立站灰度发布新版本实操指南
下一篇
宝塔面板PHP多版本兼容跨境站:宝塔面板PHP多版本设置技巧
1
系统公告

机房迁移升级通知

尊敬的用户: IP 段 103.23.148.x、156.224.29.x 原香港一区线路波动、攻击频繁,平台定于 7 月 5 日凌晨分批迁移至香港 GIA 机房,硬件升级 AMD 铂金机型。 迁移均在凌晨操作,最大程度降低业务影响,迁移期间服务器临时关机; 升级后配置不降低、费用不涨价,数据默认同步迁移; 迁移后 IP 全部更换,请及时修改域名解析、防火墙白名单; 建议提前备份重要数据,有问题可联系在线客服。 感谢理解与支持! 泽御云科技 2026.06.30
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意