遗忘Linux系统root密码所采取的必要措施
随着企业中使用Linux系统的数量越来越多,在Linux系统中root是超级管理员,相当于Windows系统的administrator。拥有绝对的权限。当管理员遗忘root密码时(当然几率很小)所采取的必要措施:
修改root密码的三种方法:
一、第一种方法:
第1步:开机后在内核上按“e”。
第2 步:将光标移动到linux16开始的行,添加内核参数rd.break,并按Ctrl+x启动
第3步,依次执行以下命令,重启系统
touch /.autorelabel #//如果你系统没有开启selinux,那么可以不做这一步
经过本人亲自测试,没有问题!
二、第二种方法:
第1步:开机后在内核上按“e”。
第2步:将光标移动到linux16开始的行,改为rw init=/sysroot/bin/sh,并按Ctrl+x启动
第3步:依次输入以下命令,重启系统
touch /.autorelabel #//如果你系统没有开启selinux,那么可以不做这一步
经过本人亲自测试,没有问题!
三、第三种方法:
类似于修复GRUB引导菜单可以参考博客:Linux修复MBR和GRUB引导菜单
进入急救模式输入“passwd root”即可!
这样轻易的修改root用户密码显然是不安全,为了提高安全性,我们可以设置进入GRUB菜单时,设置密码方法如下:
[root@localhost ~]# grub2-mkpasswd-pbkdf2 //根据提示输入密码
输入口令:
Reenter password:
PBKDF2 hash of your password is
//“is”之后是经过加密的密码字串符(由于限制,不可发布)
[root@localhost ~]# cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bak
[root@localhost ~]# cp /etc/grub.d/00_header /etc/grub.d/00_header.bak
//建议做个备份(实验环境,无所谓)
[root@localhost ~]# vim /etc/grub.d/00_header //这是通过密钥工具生成密码的配置文件
…………………… //省略部分内容
cat << EOF
set superusers="root" //设置用户名
password_pbkdf2 root
//填写刚才通过密钥工具生成的密钥文件(就是刚才生成密钥文件“is”之后的内容,由于限制不可发布)
//设置用户名的密码
EOF
[root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
//重新生成配置文件
重新计算机测试,按“e”键进入GRUB菜单时,将提示:
输入正确的用户名和密码方可进入(实验用的是 root,跟系统中的root没有任何关系,而是配置文件设置的root及用加密算法生成的密码)!
———————— 本文至此结束,感谢阅读 ————————