部署docker被挖礦
『壹』 什麼是K8S
k8s全稱kubernetes,這個名字大家應該都不陌生,k8s是為容器服務而生的一個可移植容器的編排管理工具,越來越多的公司正在擁抱k8s,並且當前k8s已經主導了雲業務流程,推動了微服務架構等熱門技術的普及和落地,正在如火如荼的發展。想要了解更多,我推薦你去看看時速雲,他們是一家全棧雲原生技術服務提供商,提供雲原生應用及數據平台產品,其中涵蓋容器雲PaaS、DevOps、微服務治理、服務網格、API網關等。大家可以去體驗一下。
希望能給您提供幫助,可以給個大大的贊不。
『貳』 解決挖礦病毒的經歷
線上一台伺服器,CPU高達90%以上,經過top 分析出進程kdevtmpfsi
kill -9 殺死進程無果,很快就會自動恢復
排查步驟:
結果:
病毒被植入到了線上運行的某一docker容器內。
如何先確定是哪一容器再去刪除搜索結果中的病毒文件?
我這台機器跑的容器不多,可以用復制文件的方法,先 docker cp 一個文件到容器中。再去find 這個文件
如果結果還是在剛才搜索病毒的那個文件目錄下(/var/lib/docker/devicemapper/mnt/xxxxx )就可以確定容器了。結果是php的容器出現了問題。
知道是具體是什麼容器出現了問題,最快的辦法就是先重啟一個新的容器。
我這邊是nginx +php 兩種服務容器,所以先啟動了一個新php容器,修改nginx中配置文件代理後端php伺服器埠為新容器的IP地址。(nginx容器已經映射目錄到宿主機)
修改PHP後端IP地址
cd 宿主機映射nginx的配置文件位置目錄
測試線上環境正常後,刪除原來的php容器。(這是自然也==直接刪除了病毒文件)
執行 TOP命令,CPU佔用正常。
平時防火牆和sellinux都關閉的話,伺服器不要暴漏太多無用埠,出現問題應該最新通過進程名去查找文件的原始位置去分析問題,遇到挖礦病毒也應該多注意/etc/init.d下和cron計劃任務有無異常。
後期也可以寫個cron或者腳本