如何在 CentOS 7 和 RHEL 7 上使用密码保护 GRUB 引导加载程序
Grub 是自由软件基金会多重引导规范的参考实现,它为用户提供了引导计算机上安装的多个操作系统之一的选择,或者选择特定操作系统分区上可用的特定内核配置。
使用无密码的 Grub 意味着任何了解 grub 和 Linux 的人都可以通过在 Grub 菜单中传递一些参数来未经授权地访问您的 Linux 系统(按字母 'e'然后进行少量修改)。为了防止这种情况,您必须为 Grub 创建一个用户并生成加密密码才能关联。本教程适用于 CentOS 和所有 Redhat Linux 衍生版本。我们还有另一篇关于如何在 Debian、Ubuntu 和 Kali Linux 上使用密码保护 grub 的文章
在编辑‘/etc/grub.d/10_linux’文件之前,强烈建议备份grub.cfg和10_linux,
备份grub.cfg文件;
# cd /boot/grub2/
# cp grub.cfg grub.cfg.backup
然后通过以下方式备份10_linux;
# cd /etc/grub.d/
# cp 10_linux 10_linux.backup
要获取要使用的 grub 密码,请在终端上键入以下命令来生成 grub 加密密码
# grub2-mkpasswd-pbkdf2
然后输入密码两次
生成 Grub 加密密码后,打开“/etc/grub.d/10_linux”文件,然后在文件末尾添加以下行。
# vi /etc/grub.d/10_linux
然后按 G 到达最后一行。按字母 i 或 insert 键并将您的内容粘贴到末尾。
cat <<EOF
set superusers=”Koromicha”
Password_pbkdf2 Koromicha 'Paste Generated_encrypted_password'
EOF
将 Koromicha 替换为您要在 grub 菜单上用于登录的用户名。
按 ESC 键保存并退出,然后:
:wq
有关视觉细节,请参阅下面的屏幕截图:
就这样。重新启动您的计算机,您将在 grub 菜单中看到用户名提示。按 e 登录并输入您的用户名和密码。