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

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

时间:2024-11-05 19:58:23浏览次数:2  
标签:secure -- sudo boot sbctl efi Linux

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 <文件名>

标签:secure,--,sudo,boot,sbctl,efi,Linux
From: https://www.cnblogs.com/KZ25T/p/18528695

相关文章

  • Vue+Springboot 前后端分离项目如何部署?
    本文转载自:https://fangcaicoding.cn/course/11/58大家好!我是方才,目前是8人后端研发团队的负责人,拥有6年后端经验&3年团队管理经验,截止目前面试过近200位候选人,主导过单表上10亿、累计上100亿数据量级的业务系统的架构和核心编码。“学编程,一定要系统化”是我一直坚持......
  • springboot+vue朝阳小区防疫工作管理平台【开题+程序+论文】
    系统程序文件列表开题报告内容研究背景随着全球疫情的持续演变,社区作为疫情防控的第一线,其管理效率与精准度直接关系到疫情的传播控制与社会秩序的稳定。朝阳小区作为一个典型的大型居民区,人员流动频繁,防疫工作面临诸多挑战。传统的防疫管理方式,如人工登记、电话随访等,不仅......
  • springboot+vue车位服务小程序【开题+程序+论文】
    系统程序文件列表开题报告内容研究背景随着城市化进程的加速,车辆数量急剧增加,停车难问题已成为困扰城市居民日常生活的重大难题。传统的停车场管理方式往往存在信息不透明、车位利用率低、用户体验差等问题,尤其是在高峰时段,寻找停车位的过程不仅耗时耗力,还常常导致交通拥堵......
  • springboot+vue体育馆预约微信小程序【开题+程序+论文】
    系统程序文件列表开题报告内容研究背景随着全民健身意识的日益增强,体育馆作为重要的运动场所,其利用率逐年攀升。然而,传统的体育馆预约方式,如电话预约、现场登记等,已难以满足当前社会对高效、便捷服务的需求。尤其在高峰时段,体育馆常常出现人满为患、资源紧张的情况,给广大运......
  • java计算机毕业设计基于springboot的小区物业管理系统(开题+程序+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容一、研究背景随着城市化进程的加速,小区规模不断扩大,小区物业管理面临着诸多挑战。传统的物业管理方式依赖人工操作,效率低下,容易出现信息管理混乱、服务响应不......
  • Linux服务器配置acme.sh,自动申请和续签SSL证书
    官方教程:https://github.com/acmesh-official/acme.sh/wiki/%E8%AF%B4%E6%98%8E一、安装acme.shcurlhttps://get.acme.sh|[email protected]服务器改成letsencryptacme.sh--set-default-ca--serverletsencrypt二、生成证书acme.sh--issue-dwww.test.com--......
  • 【计算机毕业设计选题推荐】基于SpringBoot餐饮连锁店管理系统的设计与实现 【附源码+
    ✍✍计算机毕设编程指导师**⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流!⚡⚡Java、Python、小程序、大数据实战项目集⚡⚡文末获取......
  • springboot+vue超市管理小程序后8【开题+程序+论文】
    系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展和消费者对便捷购物体验需求的日益增加,超市管理面临着前所未有的挑战与机遇。传统的人工管理模式不仅效率低下,而且容易出错,难以满足现代商业运营的需求。特别是在商品分类、库存控制、商品流通以及会员管理等关......
  • springboot+vue乘客电梯无纸化维保系统功能详细【开题+程序+论文】
    系统程序文件列表开题报告内容研究背景随着城市化进程的加速,高层建筑如雨后春笋般涌现,乘客电梯作为现代生活中不可或缺的垂直交通工具,其安全性能和运行效率直接关系到公众的生命安全与生活质量。传统的电梯维保模式依赖于纸质记录,不仅效率低下,且易产生数据错漏,难以实现对电......
  • springboot+vue城市闪送微信小程序【开题+程序+论文】
    系统程序文件列表开题报告内容研究背景随着城市化进程的加速,人们对生活便捷性的需求日益增强,特别是在快递配送领域。传统的快递服务虽然覆盖面广,但在即时配送方面往往存在响应慢、成本高的问题。近年来,以“闪送”为代表的即时配送服务迅速崛起,以其高效、灵活的特点满足了城......