2. 删除vimshell
vim删除后重装,致使系统登陆异常:sudo命令失效,显示/etc/sudoers文件不存在vim
查看系统中已安装的vim软件包bash
依次查看依赖关系,发现vim-minimal与sudo存在依赖ssh
故删除vim-minimal时,会连带删除sudo,致使系统登陆异常spa
总结:操作系统
调用yum {remove|erase}删除软件时,需仔细核对依赖关系,留意「will be erased」字样,谨防删除系统文件进程
1. 攻击事件
问题:root没法登录,ssh自动断开
路由
环境:CentOS7 x86_64rem
背景:
◇ 对路由器作端口映射,映射「22」号端口,后启动「DMZ」,直接将家里的主机暴露于公网
◇「root」用户密码为弱口令「123456」
事件回顾:
① 发现CPU太高
② top命令显示系统负载高达4,一个名为「26487」的进程CPU利用率为200
③ kill命令杀死进程
④ 短期内,ssh链接自动断开
⑤ 重启系统,root登陆,自动回退到登陆界面
⑥ ssh尝试链接,仍旧失败
尝试:
① ssh远程执行命令「date」「reboot」,结果:无输出无反应,失败
② 使用「rongxj」用户登录,结果:成功
查看各配置文件,结果:无权限
以「sudo cmd」执行命令,结果:'rongxj is not in the sudoers file.'
③ 进入单用户模式,结果:不少文件在单用户模式下不可见
起色:
xshell从新登陆「root」,链接成功后,Bash提示字符串出现前,反复快速「Ctrl+C」,结果:简行模式,登录成功,完整root权限
排查:
查看~/.bashrc,内容只一行「exit」
至此真相大白
分析:
登录shell脚本调用顺序为
「/etc/profile」——「.bash_profile」——「.bashrc」——「/etc/bashrc」
「.bash_profile」中以「source」命令运行「.bashrc」,然后由「.bashrc」以「source」命令运行「/etc/bashrc」,臭虫们将「.bashrc」文件内容改成「exit」,使得脚本调用过程提早结束,故而「root」用户登陆失败(自动退出)
调查:
「last」查看登陆信息
上午「10:30」左右,刚把主机暴露于外网,在「弱口令」的条件下,就有两个陌生的IP登陆进来,「124.68.10.20」(天津)和「195.22.127.83」(波兰)
「history」中没有找到有价值的线索
总结:
① 需为一两个普通用户赋予「root」权限,以备不测
② 任何暴露于公网的东西,一是务必使用强密码,二是尽可能修改众所周知的默认端口
③ 按期作备份,虚拟机则开启「自动快照保护」
经验:
在不肯定bug前,沉住气,不可按照Google或Baidu出的结果,逐一试错。缕清关系,按照操做系统执行的流程,逐一排查,找到「根源」后,方可动手