破解CentOS7的root及加密grub修复实战
破解CentOS7的root及加密grub修复实战
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.破解CentOS7的root口令方案1
1>.启动时任意键暂停启动

2>.按e键进入编辑模式

3>.将光标移动linux16开始的行,添加内核参数rd.break(表示打断内核正常启动 )

4>.按ctrl-x启动

5>.mount –o remount,rw /sysroot(以只读的方式重新挂载)

6>.chroot /sysroot(切换到咱们硬盘上的根)

7>.passwd root

8>.touch /.autorelabel(如果selinux是开启的小伙伴这个步骤需要创建该文件,这样当操作系统下次重启启动时,针对每一个文件重新贴标签)

9>.exit

10>.reboot

二.破解CentOS7的root口令方案2
>.启动时任意键暂停启动
>.按e键进入编辑模式
>.将光标移动linux16开始的行,改为rw init=/sysroot/bin/sh
>.按ctrl-x启动
>.chroot /sysroot
>.passwd root
>.touch /.autorelabel
>.exit
>.reboot 博主推荐阅读:
https://www.cnblogs.com/yinzhengjie/p/7457286.html
三.加密grub口令实战
1>.设置grub的口令
[root@node101.yinzhengjie.org.cn ~]# grub2-setpassword #自定义grub的密码
Enter password:
Confirm password:
[root@node101.yinzhengjie.org.cn ~]#
[root@node101.yinzhengjie.org.cn ~]# ll /boot/grub2/user.cfg #上面的命令执行成功后会自动生成该文件
-rw-------. root root Dec : /boot/grub2/user.cfg
[root@node101.yinzhengjie.org.cn ~]#
[root@node101.yinzhengjie.org.cn ~]# date
Sat Dec :: CST
[root@node101.yinzhengjie.org.cn ~]#
[root@node101.yinzhengjie.org.cn ~]# cat /boot/grub2/user.cfg #该文件内容是新生成的加密后的密码
GRUB2_PASSWORD=grub.pbkdf2.sha512..96D036FA97EF7CFA389964AFA911EBE7754434DF0E10E30193ADDBC22E5258FF033DC45860508D73269F14A0B3845DB1D4E58FA305FAA198A4613877DF66634B.DDA
6CFC33EE04EE28D7FE4CD60F1F3E2F3E9D7291AA254FE1D642B48B6984EF6FCC0992A0F565C08962FB3DE62904D97B664FC84AB16B524B79607B8DC5BF2CF
[root@node101.yinzhengjie.org.cn ~]#
[root@node101.yinzhengjie.org.cn ~]#
2>.启动时任意键暂停启动
[root@node101.yinzhengjie.org.cn ~]# reboot Connection closed by foreign host. Disconnected from remote host(node101.yinzhengjie.org.cn) at ::. Type `help' to learn how to use Xshell prompt.
[c:\~]$

3>.按e键进入编辑模式

4>.输入咱们自定义的root密码

5>.密码输出成功才能进入编辑界面

5>.删除grub的密码
[root@node101.yinzhengjie.org.cn ~]# ll /boot/grub2/user.cfg #用于保存grub加密的密码
-rw-------. root root Dec : /boot/grub2/user.cfg
[root@node101.yinzhengjie.org.cn ~]#
[root@node101.yinzhengjie.org.cn ~]# rm -f /boot/grub2/user.cfg #删除该文件后密码grub加密就会自动失效啦~
[root@node101.yinzhengjie.org.cn ~]#
四.修复grub实战案例
1>.模拟故障
[root@node101.yinzhengjie.org.cn ~]# ll /boot/
total
-rw-r--r--. root root Nov config-3.10.-.el7.x86_64
drwx------. root root Nov efi
drwxr-xr-x. root root Aug : grub
drwx------. root root Dec : grub2
-rw-------. root root Aug : initramfs--rescue-22848f95520c44db9caaa9661a12ef33.img
-rw-------. root root Aug : initramfs-3.10.-.el7.x86_64.img
-rw-------. root root Aug : initramfs-3.10.-.el7.x86_64kdump.img
-rw-r--r--. root root Nov symvers-3.10.-.el7.x86_64.gz
-rw-------. root root Nov System.map-3.10.-.el7.x86_64
-rwxr-xr-x. root root Aug : vmlinuz--rescue-22848f95520c44db9caaa9661a12ef33
-rwxr-xr-x. root root Nov vmlinuz-3.10.-.el7.x86_64
[root@node101.yinzhengjie.org.cn ~]#
[root@node101.yinzhengjie.org.cn ~]# rm -rf /boot/grub* #删除所有grub信息
[root@node101.yinzhengjie.org.cn ~]#
[root@node101.yinzhengjie.org.cn ~]# ll /boot/
total
-rw-r--r--. root root Nov config-3.10.-.el7.x86_64
drwx------. root root Nov efi
-rw-------. root root Aug : initramfs--rescue-22848f95520c44db9caaa9661a12ef33.img
-rw-------. root root Aug : initramfs-3.10.-.el7.x86_64.img
-rw-------. root root Aug : initramfs-3.10.-.el7.x86_64kdump.img
-rw-r--r--. root root Nov symvers-3.10.-.el7.x86_64.gz
-rw-------. root root Nov System.map-3.10.-.el7.x86_64
-rwxr-xr-x. root root Aug : vmlinuz--rescue-22848f95520c44db9caaa9661a12ef33
-rwxr-xr-x. root root Nov vmlinuz-3.10.-.el7.x86_64
[root@node101.yinzhengjie.org.cn ~]#
[root@node101.yinzhengjie.org.cn ~]#
[root@node101.yinzhengjie.org.cn ~]# reboot #如下图所示,重启操作系统发现无法正常启动啦~ Connection closed by foreign host. Disconnected from remote host(node101.yinzhengjie.org.cn) at ::. Type `help' to learn how to use Xshell prompt.
[c:\~]$

2>.使用光盘启动并选择"Troubleshooting"

3>.选择第二项"Rescue a CentOS system"

4>.选择继续,输入"1"

5>.切根并安装grub

6>.使用grub2-mkconfig命令生成/boot/grub2/grub.cfg配置文件(注意,如果该步骤执行失败,你得考虑内核文件是否也被删除啦?解决方案就是使用rpm命令来安装kernel(https://www.cnblogs.com/yinzhengjie/p/11921248.html)相关的软件包后再执行该命令,之前我们已经再演示过来,这里就不重复啦~)

7>.退出根环境并重启

8>.操作系统启动成功啦~

破解CentOS7的root及加密grub修复实战的更多相关文章
- CentOS7 Linux中通过加密grub防止黑客通过单用户系统破解root密码
如何防止别人恶意通过单用户系统破解root密码,进入系统窃取数据? 给grub加密,不让别人通过grub进入单用户. 17.3.1 基于centos6进行grub加密 [root@63 ~]# gr ...
- 加密grub防止通过单用户模式破解root密码
(1).CentOS6 1)产生加密密码 [root@CentOS6 ~]# grub-md5-crypt Password: Retype password: $1$QPduF0$FNhzDUPQP ...
- 实战-加密grub防止黑客通过单用户系统破解root密码
基于Centos8进行grub加密 加密grub 实战场景:给grub加密,不让别人通过grub进入单用户. 使用grub2-mkpasswd-pbkdf2创建密文 [root@localhost ~ ...
- CentOS7密码忘记解决方法&&GRUB菜单加密
CentOS7的root密码忘记怎么办 注意:该方法只适用于Linux7版本,可以用cat /redhat-release 查看 这里这里只介绍一种方法 1.启动的时候,在启动界面,相应启动项,内核名 ...
- centos单用户模式:修改ROOT密码和grub加密
centos单用户模式:修改ROOT密码和grub加密 CentOSLinux网络应用配置管理应用服务器 Linux 系统处于正常状态时,服务器主机开机(或重新启动)后,能够由系统引导器程序自动引导 ...
- 其它综合-CentOS7 忘记root密码
CentOS7 忘记root密码 长时间不用的 CentOS 机器再次开机的时候忽然忘记了密码,总不能就重装一台吧,还有好多服务在机器上,于是决定重置root的密码. 如果是已经开启的机器,需要进行关 ...
- RHEL6.5 grub修复测试
RHEL6.5 grub修复测试 1.删除系统中的grub.conf配置文件,然后重启系统#rm -f /boot/grub/grub.conf#reboot 2.重启后,系统进入到grub界面:gr ...
- CentOS7重新生成 /boot/grub2/grub.cfg
CentOS7重新生成 /boot/grub2/grub.cfg CentOS7 is using grub2 and the generated /boot/grub2/grub.cfg rathe ...
- centos7重置root密码
修改centos7的root密码重置非常简单,只需要登录系统,执行passwd按enter即可, 但是如果忘记root密码,该如何修改呢 1, 重启系统之后,系统启动进入欢迎界面,加载内核步骤时,选中 ...
随机推荐
- 在非gnome系桌面环境下运行deepin-wine tim的错误解决
本文通过MetaWeblog自动发布,原文及更新链接:https://extendswind.top/posts/technical/deepin_wine_run_in_not_gnome_desk ...
- 运维-安装rabbitmq 集群
服务器: online-platform-rabbitmq-01 online-platform-rabbitmq-02 online-platform-rabbitmq-03 绑定HOSTS: ...
- [技术博客]ubuntu+nginx+uwsgi+Django+https的部署
ubuntu+nginx+uwsgi+Django+https部署文档 配置机器介绍 操作系统:Ubuntu 18.04.2 LTS 64位 python版本:Python 3.6.7 Django版 ...
- 饱了吗-web前端个人总结
一.引言 1.0 项目源代码整合 饱了吗前端web:传送门 饱了吗web和app后端:传送门 饱了吗app前端:传送门 饱了吗web展示:传送门 1.1 编写背景 web端开发人员较少,正好以前学习过 ...
- Python3.7 - Argparse模块的用法
argparse 是一个命令行参数解析模块. argparse 是python自带的命令行参数解析包,可以用来方便地读取命令行参数,当你的代码需要频繁地修改参数的时候,使用这个工具可以将参数和代码分离 ...
- [原创]Ladon5.7大型内网渗透综合漏洞扫描器
Ladon LadonGUI Cobalt Strike PowerLadon PythonLadon LinuxLadon 使用说明 ID 主题 URL 1 Ladon文档主页 https://gi ...
- Collection 接口的 toArray 方法
Collection 接口的 toArray 方法 方法签名 Object[] toArray() 返回包含此 collection 中所有元素的数组. T[] toArray(T[] a) 返回包含 ...
- 数据结构部分总结(c语言版)
这是一个 /*此头文件适用于串其中包括最基本的函数操作 OK代表成功NO代表失败FS为特殊失败的标志 注:此头文件中的初始化使用'0'代表结束的 使用者可以根据需要自行改变,最后一 个函数为KMP算法 ...
- 【模板】LCT
核心思想: 动态维护一个森林.支持删边,加边,查询链信息等很多操作. 由若干棵$Splay$组成,每棵$Splay$维护一条链,以深度作为关键字. 也就是说$Splay$的中序遍历相当于从上到下遍历这 ...
- java基础 super和this
/** * super关键字的用法有三种: * 1.在子类的成员方法中,访问父类的成员变量 * 2.在子类的成员方法中,访问父类的成员方法 * 3.在子类的构造方法中,访问父类的构造方法 * * th ...