問題描述
- Linux服務器(包括但不限於CentOS)出現名爲kdevtmpfsi的進程,佔用高額的CPU、內存資源;
- 並且單純的kill -9 進程ID 例:kill -9 23455無法完全殺死,不久便會復活;
- 同2.理殺死 kdevtmpfsi的守護進程kinsing,一小段時間又會出現這對進程;
- 找到並刪除這2個進程對應的可執行文件例:find / -name kinsing,一小段時間又會出現。
問題根源
- 服務器安裝的redis鏡像有問題,被植入kdevtmpfsi挖礦程序。
- redis未設置密碼、或者密碼過於簡單
- 服務器被植入定時任務:下載病毒程序、並喚起,及進程存活監測
1.治本方法
- 更換redis鏡像
- redis設置安全性高的密碼
- 檢查定時任務crontab -l,如有必要cat or vim 進入腳本,確認自家腳本沒有串改
- 沒有用到的端口,不要開放
- 可不做查出外部植入的定時程序,訪問哪個ip下載病毒程序,將其拉黑
2.治標方法、穩定有效
- 編寫shell腳本 vim /tmp/kill_kdevtmpfsi.sh;
ps -aux | grep kinsing |grep -v grep|cut -c 9-15 | xargs kill -9
ps -aux | grep kdevtmpfsi |grep -v grep|cut -c 9-15 | xargs kill -9
rm -f /var/tmp/kinsing
rm -f /tmp/kdevtmpfsi
- 新增定時任務;
*/1 * * * * /tmp/kill_kdevtmpfsi.sh - top -d 5觀察,解決
btw:順便做一下【治本方法的2.3.4.】。
基本這兩病毒進程一喚起,沒開挖,就被殺掉,不會佔用CPU資源
雖然有效,但畢竟治標,不影響公司業務的時候還是用治本的方案
ok,done~