由于RHEL7/CentOS7和之前版本的启动模式有些不同,CentOS7使用Systemd代替了之前版本的SysV,取代UNIX时代以来一直在使用init系统.所以CentOS7的root口令的破解与之前版本也有一些不同。

  CentOS6及之前版本的密码破解,可参考之前的一篇博客:linux密码的破解与保护

下面我们就来看一看CentOS7的root口令该如何破解:

  rhel7/CentOS7进入单用户模式和重置密码的方式发生了较大的变化,GRUB由b引导变成了Ctrl+x引导,在CentOS7中重置密码主要有rd.break和init两种方法

一、rd.break方式:

①启动时任意键暂停启动,按e键进入编辑模式

RHEL7/CentOS7破解root口令_第1张图片

②将光标移动linux16开始的行,添加内核参数rd.break,按ctrl-x启动到shell


RHEL7/CentOS7破解root口令_第2张图片


③重新挂载可读写根目录 mount –o remount,rw /sysroot

④切换根目录 chroot /sysroot

⑤修改root口令 passwd root

⑥使SElinux生效,对文件系统重新设定标签 touch /.autorelabel

⑦退出当前shell

⑧重启

RHEL7/CentOS7破解root口令_第3张图片

So,root口令修改完成。


二、init方式:

1. 启动系统,并在GRUB2启动屏显时,按下e键进入编辑模式。

2. 在linux16/linux/linuxefi所在参数行尾添加以下内容:init=/bin/sh

3. 按Ctrl+x启动到shell。

RHEL7/CentOS7破解root口令_第4张图片

4. 挂载文件系统为可写模式:mount –o remount,rw /

5. 运行passwd,并按提示修改root密码。
6. 如何系统之前启用了selinux,对文件系统重新打标签,必须运行以下命令,否则将无法正常启动系统:touch /.autorelabel

7. 运行命令exec /sbin/init 启动系统

RHEL7/CentOS7破解root口令_第5张图片