Linux 操作系统如何启用 secure boot(不限发行版)(简单的方法)

news/2024/11/5 20:05:01/文章来源:https://www.cnblogs.com/KZ25T/p/18528695

Linux 操作系统如何启用 secure boot(不限发行版)(简单的方法)

很多方法比较复杂,而且容易出现各种不兼容问题,这里我记录我的一种比较简单的方法。

该方法在我的 kali linux(基于 debian)已测试成功。

参考文献:archwiki

安装 sbctl

archlinux: sudo pacman -S sbctl

gentoo: sudo emerge --ask app-crypt/sbctl

其他发行版请使用通用方法:

  • 下载仓库 https://github.com/Foxboron/sbctl,进入仓库目录。
  • 安装软件包,Debian 可用 sudo apt install asciidoc asciidoc-base
  • 编译:make
  • 安装:sudo cp ./sbctl /usr/local/bin
  • 之前安装的软件包可选择卸载:sudo apt autoremove asciidoc asciidoc-base,也可以不卸载,根据你的情况来看。

安装 grub 模块

这样一定能完成:

sudo grub-install --target=x86_64-efi --efi-directory=esp --bootloader-id=GRUB --modules="tpm" --disable-shim-lock

本人使用简单一点的命令也能完成:

sudo grub-install --modules="tpm" --disable-shim-lock

调整 boot 为 setup mode

重启,开机的时候进入主板的 bios 的 secure boot 的设置,记得把 setup mode 打开(和电脑品牌或主板厂商有关,一般自己都能找得到)

使用 sbctl 签名

登记密钥

使用 sbctl 检测状态:sbctl status,理论上来讲,installed 是 not,setup mode 是 Enabled(必须),secure boot 是 disabled,除了中间那一项,别的也许有些不同也是可接受的。

创建密钥:sudo sbctl create-keys

登记 UEFI:sudo sbctl enroll-keys -m

这一步可能提示 you need to chattr -i files in efivars,此时把上面列出的每个文件都依次执行 sudo chattr -i <文件名> 之后再重复执行这一步。

接下再检测状态:sbctl status,这时候输出应该有 Installed: ✓ sbctl is installed,否则请检查前几步是否出错。

签署

检查验证情况:sudo sbctl verify,会列出来一大对叉号,

找到你的操作系统正在使用的内核,一般是 /boot/vmlinuz 开头的某个文件,签名:sudo sbctl sign -s <文件名>

备份一下启动文件,我的操作系统是 /boot/efi/EFI/Boot/bootx64.efi,各种发行版里应该都是在 ESP 分区下,名称类似的路径。

找到你的 grub 启动文件,我的操作系统是 /boot/efi/EFI/kali/grubx64.efi,复制到上面的启动文件位置,并签名:sudo sbctl sign -s <文件名>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/827286.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

『模拟赛』多校A层冲刺NOIP2024模拟赛18

『模拟赛记录』多校A层冲刺NOIP2024模拟赛18Rank 打成大奋了A. 选彩笔(rgb) 签 我是彩笔 赛时完全不会啊,打了一个 25k 的贪心结果爆栈了喜提 0pts。 最大值最小,还是二分答案。二分的答案是最大差,发现值域很小,我们在 check 时可以直接枚举每个色号的最大值,统计在所选…

读UCOS源码总结

在之前一直想阅读一个RTOS的源码来看看里面到底是怎么设计的,虽说经常使用RTOS大概知道里面各个模块的工作原理,但是具体是如何实现的,从来没有看过。那么,初看代码当然要先找个简单的入门,于是,UCOSIII就成了我的选择。 以前啃源码的方式真的效率很低,看的头大速度还慢…

多校A层冲刺NOIP2024模拟赛18

赛时电脑死了,恼了就没交。赛后交是155pts。 T1 是二分答案+三维前缀和check,T2 瞎写了个搜索。 T1 选彩笔(rgb) 将r,g,b看做三个维度。 答案显然有可二分性,直接二分答案。那么就转化为是否存在一个边长为\(mid\)三维正方体,其内部有大于\(k\)个点。 三维前缀和维护即刻…

# 20222309 2024-2025-1 《网络与系统攻防技术》实验四实验报告

1.实验内容 一、恶意代码文件类型标识、脱壳与字符串提取 对提供的rada恶意代码样本,进行文件类型识别,脱壳与字符串提取,以获得rada恶意代码的编写作者,具体操作如下: (1)使用文件格式和类型识别工具,给出rada恶意代码样本的文件格式、运行平台和加壳工具; (2)使用…

从0开始搭建自己的直播平台

本文讲述了如何从0开始,利用腾讯云的平台,快速搭建一个直播平台的过程。本文讲述了如何从0开始,利用腾讯云的平台,快速搭建一个直播平台的过程。 准备工作 要有两个已经备案完成的域名。 域名申请及备案的操作,这部分可以直接看腾讯云的文档,也可以等我后面有时间自己再写…

[Zer0pts2020]easy strcmp

[Zer0pts2020]easy strcmp die查壳找到加密函数如何找到加密函数的找到init函数,跟进funcs_889 、跟进使用x交叉引用qword_201090即可找到主加密函数 那这个加密函数是如何连上main函数的呢? mainmain函数这里运用了strcmp,但我们却找不到strcmp到底对比了什么 但根据我们刚…

LDAP--Jenkins详解笔记

一、Ldap的结构1.组织角色 所有用户都可以登录,但是只有创建时的admin组角色有增删改的权限,相当于是根目录,千万不能删,删了就全没了注意,admin用户是首个超级登录用户(相当于根),需要用配置文件生成,详见:https://www.cnblogs.com/wangyuanguang/p/18189832 ##注意…

系统集成项目管理工程师笔记4 - 第四章 信息系统架构

信息系统集成项目涉及的架构通常有系统架构、数据架构、技术架构、应用架构、网络架构、安全架构; 4.1 架构基础架构的本质是决策; 4.1.1 指导思想通过指导思想的贯彻实施,推动项目多元参与者能保持集成关键价值的一致性理解,从而减少不必要的矛盾与冲突;4.1.2 设计原则太…

举例说明什么情况下会更倾向于使用抽象类而不是接口

接口和抽象类都遵循”面向接口而不是实现编码”设计原则,它可以增加代码的灵活性,可以适应不断变化的需求。 接口 vs 抽象类 继承限制:Java 中,一个类只能继承一个类,但可以实现多个接口。 继承一个类意味着失去了继承其他类的机会。行为表示:接口通常用于表示附加的行为…

智慧测绘数字化管理平台建设方案

随着信息技术的飞速发展,测绘地理信息与遥感专业正经历着一场革命性的变革。智慧测绘数字化管理平台的建设,不仅能够提高测绘数据的准确性和实时性,还能为城市规划、环境保护、灾害预防等领域提供强有力的数据支持。本文将探讨智慧测绘数字化管理平台的建设方案,以期为相关…

劫持微信聊天记录并分析还原 —— 解密数据库(二)

程序以 Python 语言开发,可读取、解密、还原微信数据库并帮助用户查看聊天记录,还可以将其聊天记录导出为csv、html等格式用于AI训练,自动回复或备份等等作用。本工具设计的初衷是用来获取微信账号的相关信息并解析PC版微信的数据库。程序以 Python 语言开发,可读取、解密、…