linux中grub启动引导程序的加密介绍

 更新时间:2021年12月10日 09:47:28   作者:繁华似锦Fighting  
大家好,本篇文章主要讲的是linux中grub启动引导程序的加密介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览

1、什么是grub加密

上篇文章说了,系统在开机的时候,有一个5秒的读秒时间,方便你进入到grub界面中。

如下图所示:

此时我们按下Enter键,就可以进入到grub界面中。

如下图所示:

在选择框的正下方可以看到有几行提示:

# 使用 ↑ 和 ↓ 键高亮某个选项,并按回车键确认来引导选定的操作系统。
Use the ↑ and ↓ keys to select which entry is highlighted.
Press enter to boot the selected OS,

# 按e键在启动之前编辑命令,
'e' to edit the connands before booting,

# 按a键在启动之前修改内核参数,
'a' to nodify the kernel argunents before booting, 

# 按c键切换命令行(esc键返回)。
or 'c' for a connand-1 ine.

可以看到提示,按e键就能编辑grub配置文件中的启动选项内容。

e键,结果如下图:

提示再按e键可直接修改内容。

grub加密,就是在上面第二张图的状态时,需要先输入我们设定的密码,才能按e键编辑系统启动参数。也就是说给grub设置一个密码, 避免像上边那样能够直接进入grub,并编辑其中的系统启动参数。

2、grub加密步骤

1)执行grub-md5-crypt命令成生md5密码。

执行命令:[root@localhost ~]# grub-md5-crypt

2)设置密码。

输入两次密码:

Pas sword:
Retype pas sword:

生成MD5加密的密码字符串:$1$Y84LB1$8tMY2PibScmu0Cc8z8U351

这样就把你输入的密码进行了MD5加密,用这个加密字符串来加密grub配置文件。

3)修改grub的配置文件。

一定在timeout属性之后,在splashimage属性之前,添加password选项,一定是这个顺序,放在其他位置不生效。

如下所示:

[root@localhost ~]# vim /boot/grub/grub.conf

# 内容
default=0
timeout=5

# password选项放在整体设置处。
password --md5 $1$Y84LB1 $8tMY2PibScmu0Cc8z8U35/

splashimage=(hd 0,0)/grub/splash.xpm.gz

4)重启系统。

重启系统后,我们发现进入到grub界面中,下面的提示,原来的e键变成了p键。

我们再按e键都是没有反应的,按p键就会让你输入密码,不输入密码你就不能编辑grub的配置文件。

如下图所示:

输入后按Enter键,才进入到可编辑的grub界面中,e键提示又出来了。如下图:

注意:

当你在第四步中第一个图的时候,就算你不知道密码,直接按Enter键,系统是可以直接启动的。所以说grub加密是对grub配置文件的编译进行了加密,而不是对系统的启动进行加密。

上面的加密步骤,是对grub菜单整体加密,整体加密后,如果想进入grub编辑界面必须输入正确的密码。同时也是不影响系统的正常启动的。

还有对单个启动菜单进行加密,但grub的编辑模式是不能锁定的,还是可以按e键进入编辑模式。而且进入编辑模式后,是可以删除password字段的,不是很好,所以不讲解了。

3、grub加密的lock属性

如果我想启动CentOS系统时,既需要grub的整体加密,又需要系统启动时输入正确的grub加密密码,才能正常启动系统。那应该怎么做呢?

很简单,方法如下:在grub/boot/grub/grub.conf配置文件中,在title字段中加入lock,代表锁死,如果不输入正确的grub密码,系统是不能启动的。

如下图所示:

注意:

lock这个属性千万不要添加,如果添加了lock属性在grub的配置文件中,当你在不输入密码的时候,直接按Enter键,是不能直接进入系统的,会报错,如下图:

提示了错误32,按任意键继续,就又回来了。

为什么一定不要添加lock的原因:

在系统启动的时候,进入到grub启动引导,此时系统还没有启动完成,网卡是还没加载生效,所以远程终端是连接不上服务器的,这时候就只能拿键盘做本地输入。但现在我们的服务器一般都放在机房或者远端,你会十分的不方便。所以坚决不能用lock锁定grub的配置文件。

到此这篇关于linux中grub启动引导程序的加密介绍的文章就介绍到这了,更多相关linux grub启动引导加密内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Linux下简易进度条的实现代码

    Linux下简易进度条的实现代码

    下面小编就为大家带来一篇Linux下简易进度条的实现代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • Linux命令每天必学(5)之rm命令

    Linux命令每天必学(5)之rm命令

    rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变
    2016-01-01
  • linux防火墙状态查看的方法实例

    linux防火墙状态查看的方法实例

    在本篇文章了小编给大家整理了关于linux防火墙状态查看的方法实例的相关内容,需要的朋友们可以学习下。
    2020-02-02
  • 教大家几种在Linux系统中查看时区的方法

    教大家几种在Linux系统中查看时区的方法

    Linux 包含多种可用的时间管理工具,比如 date 或 timedatectlcommands,你可以用它们来获取当前系统时区,也可以将系统时间与 NTP 服务器同步,来自动地、更精确地进行时间管理。下面通过这篇文章来一起看看在Linux系统中查看时区的几种不同方法。
    2017-01-01
  • 在Linux系统中查看所有正在运行服务的方法小结

    在Linux系统中查看所有正在运行服务的方法小结

    在 Linux 系统中所有正在运行的服务都是用什么查看的?其实使用系统自带的工具和很多方法都可以查看到系统所有正在运行的服务,本文就和大家探讨这个问题,感兴趣的小伙伴跟着小编一起来看看吧
    2024-07-07
  • Linux初始化系统盘后重新挂载数据盘方法

    Linux初始化系统盘后重新挂载数据盘方法

    在本篇文章中我们给大家分享了Linux初始化系统盘后重新挂载数据盘的解决方法,有需要的朋友们可以参考下。
    2018-09-09
  • Linux利用Sysctl命令调整内核参数

    Linux利用Sysctl命令调整内核参数

    Sysctl指令是对系统核心参数的设置,下面这篇文章主要给大家介绍了关于Linux利用Sysctl命令调整内核参数的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2018-01-01
  • 解决Linux system v 共享内存问题

    解决Linux system v 共享内存问题

    这篇文章主要介绍了Linux system v 共享内存问题,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • Linux文件服务器实战详解(系统用户)

    Linux文件服务器实战详解(系统用户)

    这篇文章主要介绍了Linux文件服务器实战详解(系统用户),非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2018-06-06
  • CentOS7.2安装Nginx的方法步骤

    CentOS7.2安装Nginx的方法步骤

    本篇文章主要介绍了CentOS7.2安装 Nginx的方法步骤,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-07-07

最新评论