搜索

26.6. 使用密码保护 GRUB 2

download PDF

GRUB 2 提供两种类型的密码保护:

  • 修改菜单条目时需要密码,但不需要引导现有菜单条目
  • 修改菜单条目和引导一个、多个或所有菜单条目需要密码。

将 GRUB 2 配置为仅为修改条目需要一个密码

要需要密码身份验证才能修改 GRUB 2 条目,请按照以下步骤操作:

  1. 以 root 用户身份运行 grub2-setpassword 命令:

    ~]# grub2-setpassword
  2. 输入并确认密码:

    Enter password:
    Confirm password:

按照此过程创建包含密码哈希的 /boot/grub2/user.cfg 文件。此密码的用户 root/boot/grub2/grub.cfg 文件中定义。在这个版本中,在启动过程中修改引导条目需要指定 root 用户名和密码。

将 GRUB 2 配置为需要修改和引导条目的密码

使用 grub2-setpassword 设置密码 可防止菜单条目未经授权的修改,但不能未经授权的启动。要同时需要密码来引导条目,请使用 grub2-setpassword 设置密码后按照以下步骤执行:

警告

如果忘记 GRUB 2 密码,您将无法在以下过程中引导您重新配置的条目。

  1. 打开 /boot/grub2/grub.cfg 文件。
  2. 通过搜索 菜单项开头的行,找到您要使用密码保护的引导条目
  3. 从菜单条目块中删除 --unrestricted 参数,例如:

    [file contents truncated]
    menuentry 'Red Hat Enterprise Linux Server (3.10.0-327.18.2.rt56.223.el7_2.x86_64) 7.2 (Maipo)' --class red --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-327.el7.x86_64-advanced-c109825c-de2f-4340-a0ef-4f47d19fe4bf' {
        load_video
        set gfxpayload=keep
    [file contents truncated]
  4. 保存并关闭该文件。

现在,即使是引导该条目,也需要输入 root 用户名和密码。

注意

安装新内核版本时,对 /boot/grub2/grub.cfg 的手动更改会保留,但在使用 grub 2-mkconfig 命令重新生成 grub.cfg 时会丢失。因此,若要保留密码保护,请在每次使用 grub2-mkconfig 后使用上述程序。

注意

如果您从 /boot/grub2/grub.cfg 文件的每个菜单条目中删除 --unrestricted 参数,则所有新安装的内核都将在 未限制的情况下创建菜单条目, 因此自动继承密码保护。

在升级到 Red Hat Enterprise Linux 7.2 前设置密码

Red Hat Enterprise Linux 7.2 中添加了 grub2-setpassword 工具,现在是设置 GRUB 2 密码的标准方法。这与之前版本的 Red Hat Enterprise Linux 不同,后者的引导条目需要在 /etc/grub.d/40_custom 文件中手动指定,超级用户在 /etc/grub.d/01_users 文件中需要手动指定。

其他 GRUB 2 用户

在没有 --unrestricted 参数的情况下引导条目需要 root 密码。但是,GRUB 2 也支持创建其他非 root 用户,这些用户可以在不提供密码的情况下引导此类条目。修改条目仍然需要 root 密码。有关创建此类用户的详情请参考 GRUB 2 手册

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.