破解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修复实战的更多相关文章

  1. CentOS7 Linux中通过加密grub防止黑客通过单用户系统破解root密码

    如何防止别人恶意通过单用户系统破解root密码,进入系统窃取数据? 给grub加密,不让别人通过grub进入单用户. 17.3.1  基于centos6进行grub加密 [root@63 ~]# gr ...

  2. 加密grub防止通过单用户模式破解root密码

    (1).CentOS6 1)产生加密密码 [root@CentOS6 ~]# grub-md5-crypt Password: Retype password: $1$QPduF0$FNhzDUPQP ...

  3. 实战-加密grub防止黑客通过单用户系统破解root密码

    基于Centos8进行grub加密 加密grub 实战场景:给grub加密,不让别人通过grub进入单用户. 使用grub2-mkpasswd-pbkdf2创建密文 [root@localhost ~ ...

  4. CentOS7密码忘记解决方法&&GRUB菜单加密

    CentOS7的root密码忘记怎么办 注意:该方法只适用于Linux7版本,可以用cat /redhat-release 查看 这里这里只介绍一种方法 1.启动的时候,在启动界面,相应启动项,内核名 ...

  5. centos单用户模式:修改ROOT密码和grub加密

    centos单用户模式:修改ROOT密码和grub加密 CentOSLinux网络应用配置管理应用服务器  Linux 系统处于正常状态时,服务器主机开机(或重新启动)后,能够由系统引导器程序自动引导 ...

  6. 其它综合-CentOS7 忘记root密码

    CentOS7 忘记root密码 长时间不用的 CentOS 机器再次开机的时候忽然忘记了密码,总不能就重装一台吧,还有好多服务在机器上,于是决定重置root的密码. 如果是已经开启的机器,需要进行关 ...

  7. RHEL6.5 grub修复测试

    RHEL6.5 grub修复测试 1.删除系统中的grub.conf配置文件,然后重启系统#rm -f /boot/grub/grub.conf#reboot 2.重启后,系统进入到grub界面:gr ...

  8. CentOS7重新生成 /boot/grub2/grub.cfg

    CentOS7重新生成 /boot/grub2/grub.cfg CentOS7 is using grub2 and the generated /boot/grub2/grub.cfg rathe ...

  9. centos7重置root密码

    修改centos7的root密码重置非常简单,只需要登录系统,执行passwd按enter即可, 但是如果忘记root密码,该如何修改呢 1, 重启系统之后,系统启动进入欢迎界面,加载内核步骤时,选中 ...

随机推荐

  1. git: hook 修改提交信息

    git获取数字顺序版本号 因为git的版本使用的是hash值,不能很直观的看出那个版本,所以想找到一种方法,获取顺序的版本号,在网上找到了方法,可以获取顺序版本号 摘自:[使用bash从SVN和Git ...

  2. mac下编程使用字体

    1.xcode下使用的是Menlo的18号字体 2.webStorm使用的也是Menlo的18号字体 3.sublime Text 使用的也是Menlo的21号字体

  3. Python【每日一问】27

    问: [基础题1]:将一个正整数分解质因数.例如:输入 90, 打印出 90=2*3*3*5 . [基础题2]:一个数如果恰好等于它的因子之和,这个数就称为“完数” .例如6=1+2+3.请找出 10 ...

  4. Ansible14:Playbook条件语句

    目录 简介 when关键字 1. when基本使用 2. 比较运算符 3. 逻辑运算符 条件判断与tests 判断变量 判断执行结果 判断路径 判断字符串 判断整除 其他tests 条件判断与bloc ...

  5. How to sort HashSet in Java

    How to sort HashSet in Java 方法一:By Converting HashSet to List 方法二:By Converting HashSet to TreeSet i ...

  6. Ext.net自动保存读取GrdPanel列显示状态

    //layout保存 function SaveLayOut() { let colVisibleArray = []; for (var i = 0; i < mcp_gridlist.col ...

  7. 【Mac+Android+uiautomatorviewer】之报错:Unexpected error while obtaining UI hierarchy java.lang.reflect.InvocationTargetException

    安卓8.0以后uiautomatorviewer会报错,解决办法如下: 参考:<android 8.0 以后 uiautomator 无法直接使用的问题> 步骤一: 先执行命令:(注意:想 ...

  8. mysql启动报错 "unknown variable 'defaults-file=/etc/my.cnf"

    使用指定的my.cnf,而不用默认的/etc/my.cnf文件,可以在启动时,在mysqld_safe后加上参数--default-file=/usr/local/server/mysql2/etc/ ...

  9. web项目文档总览

    一个web项目的文档应该包含哪些部分 一.规范文档1.ui 设计规范2.js.css.html 编码规范3.后台程序编码规范4.文件层级及模块编码规范二.技术架构评审三.运行环境部署细则四.研发流程: ...

  10. group by 对多个字段进行分组

    转载自:https://blog.csdn.net/xx_star1204/article/details/72884983 在平时的开发任务中我们经常会用到MYSQL的GROUP BY分组, 用来获 ...