最后的话
最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!
资料预览
给大家整理的视频资料:
给大家整理的电子书资料:
如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
作者:他二哥
链接:https://www.cnblogs.com/kobexffx/p/11000337.html
症状及表现
1、CPU使用率异常,top命令显示CPU统计数数据均为0,利用busybox 查看CPU占用率之后,发现CPU被大量占用。
注:ls top ps等命令已经被病毒的动态链接库劫持,无法正常使用,大家需要下载busybox。
2、crontab 定时任务异常,存在以下内容;
3、后期病毒变异,劫持sshd,导致远程登陆失败,偶尔还会跳出定时任务失败,收到新邮件等问题
4、 存在异常文件、异常进程以及异常开机项
查杀方法
1、断网,停止定时任务服务;
2、查杀病毒主程序,以及保护病毒的其他进程;
3、恢复被劫持的动态链接库和开机服务;
4、重启服务器和服务;
附查杀脚本(根据情况修改)
脚本参考:https://blog.youkuaiyun.com/u010457406/article/details/89328869
1 #!/bin/bash
2 #可以重复执行几次,防止互相拉起导致删除失败
3
4 function installBusyBox(){
5 #参考第一段
6 busybox|grep BusyBox |grep v
7 }
8
9 function banHosts(){
10 #删除免密认证,防止继续通过ssh进行扩散,后续需自行恢复,可不执行
11 busybox echo "" > /root/.ssh/authorized_keys
12 busybox echo "" > /root/.ssh/id_rsa
13 busybox echo "" > /root/.ssh/id_rsa.pub
14 busybox echo "" > /root/.ssh/known_hosts
15 #busybox echo "" > /root/.ssh/auth
16 #iptables -I INPUT -p tcp --dport 445 -j DROP
17 busybox echo -e "\n0.0.0.0 pastebin.com\n0.0.0.0 thyrsi.com\n0.0.0.0 systemten.org" >> /etc/hosts
18 }
19
20
21 function fixCron(){
22 #修复crontab
23 busybox chattr -i /etc/cron.d/root 2>/dev/null
24 busybox rm -f /etc/cron.d/root
25 busybox chattr -i /var/spool/cron/root 2>/dev/null
26 busybox rm -f /var/spool/cron/root
27 busybox chattr -i /var/spool/cron/tomcat 2>/dev/null
28 busybox rm -f /var/spool/cron/tomcat
29 busybox chattr -i /var/spool/cron/crontabs/root 2>/dev/null
30 busybox rm -f /var/spool/cron/crontabs/root
31 busybox rm -rf /var/spool/cron/tmp.*
32 busybox rm -rf /var/spool/cron/crontabs
33 busybox touch /var/spool/cron/root
34 busybox chattr +i /var/spool/cron/root
35 }
36
37 function killProcess(){
38 #修复异常进程
39 #busybox ps -ef | busybox grep -v grep | busybox grep 'khugepageds' | busybox awk '{print $1}' |busybox sed "s/root//g" | busybox xargs kill -9 2>/dev/null
40 #busybox ps -ef | busybox grep -v grep | busybox egrep 'ksoftirqds' | busybox awk '{print $1}' |busybox sed "s/root//g" | busybox xargs kill -9 2>/dev/null
41 #busybox ps -ef | busybox grep -v grep | busybox egrep 'kthrotlds' | busybox awk '{print $1}' |busybox sed "s/root//g" | busybox xargs kill -9 2>/dev/null
42 #busybox ps -ef | busybox grep -v grep | busybox egrep 'kpsmouseds' | busybox awk '{print $1}' |busybox sed "s/root//g" | busybox xargs kill -9 2>/dev/null
43 #busybox ps -ef | busybox grep -v grep | busybox egrep 'kintegrityds' | busybox awk '{print $1}' |busybox sed "s/root//g" | busybox xargs kill -9 2>/dev/null
44 busybox ps -ef | busybox grep -v grep | busybox grep '/usr/sbin/kerberods' | busybox awk '{print $1}' |busybox sed "s/root//g" | busybox xargs kill -9 2>/dev/null
45 busybox ps -ef | busybox grep -v grep | busybox grep '/usr/sbin/sshd' | busybox awk '{print $1}' |busybox sed "s/root//g" | busybox xargs kill -9 2>/dev/null
46 busybox ps -ef | busybox grep -v grep | busybox egrep '/tmp/kauditds' | busybox awk '{print $1}' |busybox sed "s/root//g" | busybox xargs kill -9 2>/dev/null
47 busybox ps -ef | busybox grep -v grep | busybox egrep '/tmp/sshd' | busybox awk '{print $1}' |busybox sed "s/root//g" | busybox xargs kill -9 2>/dev/null
48 busybox rm -f /tmp/khugepageds
49 busybox rm -f /tmp/migrationds
50 busybox rm -f /tmp/sshd
51 busybox rm -f /tmp/kauditds
52 busybox rm -f /tmp/migrationds
53 busybox rm -f /usr/sbin/sshd
54 busybox rm -f /usr/sbin/kerberods
55 busybox rm -f /usr/sbin/kthrotlds
56 busybox rm -f /usr/sbin/kintegrityds
57 busybox rm -f /usr/sbin/kpsmouseds
58 busybox find /tmp -mtime -4 -type f | busybox xargs busybox rm -rf
59 }
60
61
62 function clearLib(){
63 #修复动态库
64 busybox chattr -i /etc/ld.so.preload
65 busybox rm -f /etc/ld.so.preload
66 busybox rm -f /usr/local/lib/libcryptod.so
67 busybox rm -f /usr/local/lib/libcset.so
68 busybox chattr -i /etc/ld.so.preload 2>/dev/null
69 busybox chattr -i /usr/local/lib/libcryptod.so 2>/dev/null
70 busybox chattr -i /usr/local/lib/libcset.so 2>/dev/null
71 busybox find /usr/local/lib/ -mtime -4 -type f| busybox xargs rm -rf
72 busybox find /lib/ -mtime -4 -type f| busybox xargs rm -rf
73 busybox find /lib64/ -mtime -4 -type f| busybox xargs rm -rf
74 busybox rm -f /etc/ld.so.cache
75 busybox rm -f /etc/ld.so.preload
76 busybox rm -f /usr/local/lib/libcryptod.so
77 busybox rm -f /usr/local/lib/libcset.so
78 busybox rm -rf /usr/local/lib/libdevmapped.so
79 busybox rm -rf /usr/local/lib/libpamcd.so
80 busybox rm -rf /usr/local/lib/libdevmapped.so
81 busybox touch /etc/ld.so.preload
82 busybox chattr +i /etc/ld.so.preload
83 ldconfig
84 }
85
86 function clearInit(){
87 #修复异常开机项
88 #chkconfig netdns off 2>/dev/null
89 #chkconfig –del netdns 2>/dev/null
90 #systemctl disable netdns 2>/dev/null
91 busybox rm -f /etc/rc.d/init.d/kerberods
92 busybox rm -f /etc/init.d/netdns
93 busybox rm -f /etc/rc.d/init.d/kthrotlds
94 busybox rm -f /etc/rc.d/init.d/kpsmouseds
95 busybox rm -f /etc/rc.d/init.d/kintegrityds
96 busybox rm -f /etc/rc3.d/S99netdns
97 #chkconfig watchdogs off 2>/dev/null
98 #chkconfig --del watchdogs 2>/dev/null
99 #chkconfig --del kworker 2>/dev/null
100 #chkconfig --del netdns 2>/dev/null
101 }
102
103 function recoverOk(){
104 service crond start
105 busybox sleep 3
106 busybox chattr -i /var/spool/cron/root
107 # 将杀毒进程加入到定时任务中,多次杀毒
108 echo "\*/10 \* \* \* \* /root/kerberods\_kill.sh" | crontab -
109 # 恢复被劫持的sshd 服务
110 #busybox cp ~/sshd_new /usr/sbin/sshd
111 #service sshd restart
112 echo "OK,BETTER REBOOT YOUR DEVICE"
113 }
114
115 #先停止crontab服务
116 echo "1| stop crondtab service!"
117 service crond stop
118 #防止病毒继续扩散
119 echo "2| banHosts!"
120 banHosts
121 #清除lib劫持
122 echo "3| clearLib!"
123 clearLib
124 #修复crontab
125 echo "4| fixCron!"
126 fixCron
127 #清理病毒进程
128 echo "5| killProcess!"
129 killProcess
130 #删除异常开机项
131 echo "6| clearInit! "
132 clearInit
133 #重启服务和系统
134 echo "7| recover!"
135 recoverOk
查杀完成以后重启服务器,发现过段时间,登陆主机,无论本地还是ssh远程登陆,依然会有病毒进程被拉起,观察top里面的进程,并用pstree 回溯进程之间的关系,发现每次用户登陆就会有病毒进程被拉起,怀疑登陆时加载文件存在问题,逐个排查下列文件:
- /etc/profile
- ~/.profile
- ~/.bash_login
- ~/.bash_profile
- ~/.bashrc
- /etc/bashrc
最后终于发现 /etc/bashrc 文件被加入了一些似曾相识的语句
病毒分析
为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!
这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。
本份面试集锦涵盖了
- 174 道运维工程师面试题
- 128道k8s面试题
- 108道shell脚本面试题
- 200道Linux面试题
- 51道docker面试题
- 35道Jenkis面试题
- 78道MongoDB面试题
- 17道ansible面试题
- 60道dubbo面试题
- 53道kafka面试
- 18道mysql面试题
- 40道nginx面试题
- 77道redis面试题
- 28道zookeeper
总计 1000+ 道面试题, 内容 又全含金量又高
- 174道运维工程师面试题
1、什么是运维?
2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?
3、现在给你三百台服务器,你怎么对他们进行管理?
4、简述raid0 raid1raid5二种工作模式的工作原理及特点
5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?
6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?
7、Tomcat和Resin有什么区别,工作中你怎么选择?
8、什么是中间件?什么是jdk?
9、讲述一下Tomcat8005、8009、8080三个端口的含义?
10、什么叫CDN?
11、什么叫网站灰度发布?
12、简述DNS进行域名解析的过程?
13、RabbitMQ是什么东西?
14、讲一下Keepalived的工作原理?
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!