Linux设置GRUB密码并加密

7 篇文章 0 订阅
5 篇文章 0 订阅
本文介绍了如何在RedHatEnterpriseLinux中设置GRUB密码以提升系统安全,包括动态修改引导参数、设置密码以及密码加密的过程,强调了GRUB密码加密在防止未经授权操作和保护系统完整性的重要性。
摘要由CSDN通过智能技术生成

目录

一、目的

二、步骤

动态修改 GRUB 引导参数

设置 GRUB 密码

GRUB密码加密

三、总结


一、目的

       在Red Hat Enterprise Linux (RHEL)或其他基于GRUB的Linux发行版中设置GRUB密码的目的主要有以下几点:  

  • 安全防护: 设置GRUB密码是为了防止未经授权的用户或攻击者在系统启动阶段通过GRUB菜单修改内核参数、选择不同的启动项(如不同的内核版本或恢复模式),尤其是进入单用户模式,因为单用户模式下可以直接访问系统并有可能绕过正常的用户身份验证修改系统设置或访问敏感数据。
  • 系统控制: 通过对GRUB设置密码保护,可以限制谁可以在启动时更改引导选项,确保只有经过授权的管理员才能进行这类操作,避免因误操作或恶意篡改而导致系统无法正常启动或运行。
  • 强化系统边界: 加强整体系统的安全性,除了在运行时的用户身份验证外,还在系统启动阶段增加了一层防线,确保系统从启动那一刻起就处于受控状态。
  • 合规性要求: 对于一些企业环境或安全要求较高的场合,加强物理层面的安全控制是符合IT安全政策和法规要求的必要手段之一。

      通过在GRUB配置中设置密码,系统在启动时会在显示GRUB菜单之前提示用户输入密码,只有输入正确的密码后,用户才能看到并修改启动选项。

二、步骤

动态修改 GRUB 引导参数

       进入 GRUB2界面后,可以使用特殊按键<e>来修改引导参数,这样可以在系统启动过程中修改内核的参数,也就是传一个参数给内核。下面示范操作过程。

  • 当系统启动时,主控制台上会显示如图所示的开始界面。用户可以根据提示在多个内核版本中选择一个内核。在此我们选择Red Hat pnterprise tinux(0-rescue-940ef23f098a4933631610e9299eb47b)9.0(救援模式)并按下<e>键进入 GRUB 编辑模式

  • 按下<e>键进入 GRUB 编辑模式。进入 GRUB 编辑模式之后,通过临时修改内核参数,根据需要进入特殊模式,如此对系统启动排故很有帮助。这里以rescue 模式为例。按向下箭头找到以开头的那一行,如图所示。在行尾先输入一个空格,再输入一个字符(示例为s),这实际上是修改传给内核的参数,将转入rescue模式(类似于以前的 Linux 单用户模式)

  • 根据上图提示按<Ctrl>+<x>组合键启动系统,进入指定的模式。此处为 rescue 模式,如图所示。输入管理员密码就可以登录,然后进行特殊操作。在这种模式下,执行命令
    systemctl defaul
    或者按<Ct>+<D>组合键可以启动进入普通模式。与普通模式相比,rescue模式装载的服务较少,启动也快。可以执行systemctl命令列出已启动的单元来进行验证。

设置 GRUB 密码

       由上述操作可知,任何人不需密码都能进入 GRUB 编辑模式修改root密码,这具有相当大的安全隐患,为此可以设置 GRUB 口令,只有拥有口令的用户才能修改 GRUB 参数。方法是修改 GRUB 配置文件,设定密码,以防止非法者进行 GRUB 编辑。 

  • 编辑/etc/grub.d/00_header 文件,在末尾添加以下内容后保存该文件:                                   
    cat <<EOF
    set superusers='admin'
    password admin 123456
    EOF

  • 执行 grub2-mkconfig 命令重新生成 grub.cfg 文件:                                                         
     grub2-mkconfig -o /boot/grub2/grub.cfg

  • 重新启动系统,在 GRUB 开始界面中按下<e>键进入 GRUB 编辑模式,输入用户和密码。

GRUB密码加密

       以上设置的密码是明文的,GRUB 可对这个密码进行加密。

  •  具体方法是先使用工具grub2-mkpasswd-pbkdf2 生成加密的密码:
  • [root@localhost ~]# grub2-mkpasswd-pbkdf2
  • Enter password:123456
  • Reenter password:123456
  • PBKDF2 hash of your passwd is grub.pbkdf2.sha512.10000.6150B98C3FD36E4B550BDFADBEA480C5323B7E2F08A8F8CA8CA2DC82EB7C210E81F4F18027E01E6B4A07BB77455FF7C4EB50C76102485C0672571F63069E3331.B7D391D469176FFD9CD90A5A131E8836AFC2BC4F41732E93E5BA12DFDDCA8AF4BFE240B180E99B3B8C447327CA49DE422C33285844F1286EF688370EE1D979CA

  • 然后将/etc/grub.d/00_header 文件的 password 语句中的密码更换成上述以 grub.pbkdf2.sha开头的密文。最后执行 grub2-mkconfig 命令重新生成 grub.cfg 文件。

三、总结

        GRUB密码加密的主要目的是增强系统的安全性。具体来说,它可以帮助防止未经授权的用户访问GRUB引导菜单,从而防止他们篡改系统或启动未经授权的操作系统。同时,GRUB密码加密还可以防止他人修改启动参数,如以单用户模式启动系统或更改root密码等潜在危险操作。因此,GRUB密码加密对于保护系统的完整性和稳定性至关重要。

  • 68
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值