HCRM博客

CentOS 7 GRUB2加密保障,彻底封闭单用户模式密码修改后门

CentOS7 GRUB2加密防止单用户模式改密码:把“后门”彻底焊死

机房凌晨两点,空调嗡鸣,你正窝在值班室刷手机,突然监控群里炸锅:“业务系统被锁了!”冲过去一看,服务器已经被人重启,单用户模式里一条passwd root指令,root密码瞬间被改,数据盘被挂载复制,整套环境成了“公共菜园”。别问为啥物理机没上锁——快递小哥刚把机柜钥匙落在前台。想堵住这种“摸电门”式入侵?给GRUB2上把锁,比加摄像头管用。

CentOS 7 GRUB2加密保障,彻底封闭单用户模式密码修改后门-图1

单用户模式为啥成了“万能钥匙”

CentOS7默认把GRUB2菜单敞开,任何人只要在启动界面按个“e”,把ro crashkernel=auto改成rw init=/bin/bash,就能绕过PAM、绕过审计,直接拿root shell。物理机、云主机、甚至某些“云控制台”的重装救援模式,都这条路数。密码复杂度再高,也扛不住这种“本地降维打击”。

加密思路:让GRUB2先验“暗号”

GRUB2支持两种锁:

  • 明文锁:改个菜单就能看,防君子不防小人;
  • CentOS 7 GRUB2加密保障,彻底封闭单用户模式密码修改后门-图2

  • PBKDF2哈希锁:把密码拆成50万次哈希,逆向成本直接上天。

下面这套流程,全程离线操作,不依赖外网,哪怕机器在深山老林里的基站,也能一次搞定。

实操:一条命令生成“锁芯”

  1. CentOS 7 GRUB2加密保障,彻底封闭单用户模式密码修改后门-图3

    先给root留个“逃生通道”,防止手抖把自己锁外面:

    cp /etc/grub.d/40_custom /boot/grub2/custom_backup

  2. 用grub2-mkpasswd-pbkdf2生成哈希,密码别用键盘顺序,用一句你老婆都记不住的唠叨

    grub2-mkpasswd-pbkdf2

    输入两次口令,得到一串长得像

    grub.pbkdf2.sha512.10000.C4E08...

    的东西,整段复制,丢进备忘录。

  3. 写锁文件,注意:别粘错空格,否则重启直接报错:

    cat > /etc/grub.d/01_password <<'EOF'

    set superusers="lockadmin"

    password_pbkdf2 lockadmin grub.pbkdf2.sha512.10000.C4E08...

    EOF

    这里lockadmin是自定义用户名,跟系统账号无关,别写成root。

  4. 给菜单加“挂锁”:编辑/etc/grub.d/10_linux,找到

    CLASS="--class gnu-linux --class gnu --class os"

    改成

    CLASS="--class gnu-linux --class gnu --class os --unrestricted"

    再把01_password文件权限锁死:

    chmod 600 /etc/grub.d/01_password

  5. 重新生成grub.cfg:

    grub2-mkconfig -o /boot/grub2/grub.cfg

    如果机器是UEFI,把路径换成

    /boot/efi/EFI/centos/grub.cfg

验证:重启后按“e”直接要密码

reboot,在GRUB2菜单随便按“e”或“c”,系统会弹出:

Enter username: lockadmin

Enter password: ********

输错三次自动退回菜单,单用户模式入口彻底消失。想改内核参数?先过哈希锁再说。

多人运维?分层授权更稳

把“只读 rescue”入口留给值班小弟,给“完全编辑”权限上二级锁:

cat >> /etc/grub.d/01_password <<'EOF'

set superusers="boss"

password_pbkdf2 boss grub.pbkdf2.sha512.10000.另一段哈希

class --unrestricted

EOF

这样普通重启无需密码,一旦想动内核行,必须boss账号。

云主机也能用?别忘了控制台“防重装”

阿里云、腾讯云、AWS的“救援模式”本质是把你的磁盘挂到别人系统,GRUB2锁挡不住。得再加一层:

  • 开“开机密码”或“控制台密码”,跟GRUB2密码不同;
  • 把重要分区用LUKS加密,密钥放KMS,哪怕磁盘被挂走,拿不到密钥也只能看乱码。

踩坑速查表

症状多半原因秒解
重启后卡在grub>命令行grub.cfg语法写错用live CD挂载系统,重新grub2-mkconfig
提示“access denied”但密码没错复制哈希时多了空格重新生成,用cat >> 追加,别手敲
UEFI机器改完无效路径写错确认/boot/efi/EFI/centos/grub.cfg已更新

一句话总结

物理机只要别人能摸到键盘,没上GRUB2锁就等于没穿裤子。花五分钟把哈希锁敲进去,比事后跑路、写报告、挨客户骂强一万倍。下次再有人想按“e”改密码,让他先和50万次PBKDF2打一架。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/41713.html

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
请登录后评论...
游客游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~