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启动引导与修复 — 71、grub启动引导程序的加密的更多相关文章

  1. 『学了就忘』Linux启动引导与修复 — 69、启动引导程序(grub)

    目录 1.启动引导程序(Boot Loader)简介 2.启动引导程序grub的作用 3.启动引导程序grub的位置 4./grub目录中其他的文件简单介绍 提示: 简单地说,Boot Loader就 ...

  2. 『学了就忘』Linux启动引导与修复 — 70、grub启动引导程序的配置文件说明

    目录 1.grub中分区的表示方法 2.grub的配置文件 3.grub的配置文件内容说明 (1)grub的整体设置 (2)CentOS系统的启动设置 1.grub中分区的表示方法 在说grub启动引 ...

  3. 『学了就忘』Linux启动引导与修复 — 72、Linux系统的修复模式(单用户模式)

    目录 1.单用户模式常见的错误修复 2.通过单用户模式修改系统密码 (1)进入grub启动引导程序中 (2)编辑相应的系统启动内容 (3)编辑grub配置文件内容 (4)启动系统 (5)修改root用 ...

  4. 『学了就忘』Linux启动引导与修复 — 74、Linux系统的修复模式(光盘修复模式)

    目录 1.光盘修复模式概念 2.光盘修复模式修复系统问题 (1)准备系统光盘 (2)进入BIOS (3)修改BIOS的启动顺序 (4)进入光盘修复模式 (5)修复系统 (6)修复系统实操 (7)总结 ...

  5. 『学了就忘』Linux服务管理 — 75、Linux系统中的服务

    目录 1.服务的介绍 2.Windows系统中的服务 3.Linux系统中服务的分类 4.独立的服务和基于xinetd服务的区别 5.如何查看一个服务是独立的服务还是基于xinetd的服务 (1)查看 ...

  6. 『学了就忘』Linux文件系统管理 — 64、磁盘配额的配置步骤

    目录 1.手工建立一个5GB的分区 2.建立需要做限制的三个用户 3.在分区上开启磁盘配额功能 4.建立磁盘配额的配置文件 5.开始设置用户和组的配额限制 6.启动和关闭配额 7.磁盘配额的查询 8. ...

  7. 『学了就忘』Linux启动引导与修复 — 68、Linux系统运行级别

    目录 1.Linux系统运行级别介绍 2.查看运行级别 3.修改当前系统的运行级别 4.系统默认运行级别 5./etc/rc.d/rc.local文件说明 1.Linux系统运行级别介绍 Linux默 ...

  8. 『学了就忘』Linux文件系统管理 — 66、通过图形界面进行LVM分区

    目录 1.选择自定义分区 2.分配boot分区 3.创建LVM物理卷 4.生成卷组 5.创建逻辑卷 6.格式化安装 我们先用新安装Linux系统时的图形化界面,来演示一下LVM逻辑卷如何进行分区. 提 ...

  9. 『学了就忘』Linux基础 — 6、VMware虚拟机安装Linux系统(超详细)

    目录 1.打开VMware虚拟机软件 2.选择Linux系统的ISO安装镜像 3.开启虚拟机安装系统 (1)进入Linux系统安装界面 (2)硬件检测 (3)检测光盘 (4)欢迎界面 (5)选择语言 ...

随机推荐

  1. int,double与机器字长

    机器字长:计算机能直接处理的二进制数据的位数,它决定了计算机的运算精度想深入了解. 学好汇编语言对你帮助非常大.汇编语言中的,最基本的数据类型有: (1) byte (2)word (3)double ...

  2. [bzoj5294]二进制

    首先可以发现$2^k$模3意义下有循环节,也就是1,-1,1,-1--考虑对于x个1,y个0,判断是否存在3的倍数1.x为偶数时一定可以,选择等量的1和-1即可2.x为奇数,要满足$x\ge 3$且$ ...

  3. 权限树的制作(menu)

    原来demo 实体类:get.set 1.使用递归的方式将数据查询出来. 2.为了减少数据库交互,一次查询所有数据,遍历集合,然后先判断父节点,如果不是父节点,用原集合重新遍历 3.map形式减少遍历 ...

  4. 【程序员翻身计划】Java高性能编程第一章-Java多线程概述

    目标 重点: 线程安全的概念 线程通信的方式与应用 reactor线程模型 线程数量的优化 jdk常用命令 Netty框架的作用 难点 java运行的原理 同步关键字的原理 AQS的抽象 JUC的源码 ...

  5. 使用微软RPA工具 Power Automate自动完成重复性工作

    介绍 最近发现了win11自带了一个有趣的功能,可以自动去执行一些流程的工作.恰好目前每天早上都需要去提醒同事填写日计划,刚好可以试用下. 这是官网上对此功能的介绍 可以看到,对于win11我们是可以 ...

  6. 实践案例1-利用低代码开发平台Odoo快速构建律师事务所管理系统

    今年10月份中旬的时候,有一段时间没联系的中学同学,我跟他关系比较好,突然打电话给我,希望我给他夫人的律所开发一个小系统.记得十几年前,当他还在他叔叔公司上班的,他是负责销售的,我们几乎每周都碰面,那 ...

  7. Codeforces 1500D - Tiles for Bathroom(贪心+队列)

    Codeforces 题面传送门 & 洛谷题面传送门 首先先讲一发我的 \(n^2q\log n\) 的做法,虽然没有付诸实现并且我也深知它常数巨大过不去,但是我还是决定讲一讲(大雾 考虑设 ...

  8. Codeforces 626G - Raffles(贪心+堆)

    题面传送门 考虑对于固定的彩票池 \(i\),我们假设现在押了 \(x\) 张彩票.利用差分的思想,从 \(x\) 张彩票变为 \(x+1\) 张时,期望的变化量 \(\Delta E=\dfrac{ ...

  9. 常见 js 数组方法使用详解

    数组常用方法总结 concat filter map some every reduce sort includes join some every 语法:array.every(function(c ...

  10. 用pipenv管理python虚拟环境

    python的虚拟环境可以为项目创建一个独立的环境,能够解决使用不同版本依赖给项目带来冲突的麻烦.创建虚拟环境的方式有很多种,pipenv会自动帮你管理虚拟环境和依赖文件,并且提供了一系列命令和选项来 ...