Secure Boot是用来做什么的?
Secure Boot 是一种由 UEFI 固件实现的启动安全机制,核心作用是确保计算机仅加载经厂商或操作系统供应商数字签名认证的启动代码。它在加电自检后即开始工作,逐级验证固件驱动、引导加载程序(如 Shim、GRUB)、内核镜像(vmlinuz)等关键组件的签名有效性,任何一环验证失败都将中止启动流程。这一机制已被 Windows 8 至 11 全系强制要求,也是银河麒麟等国产操作系统通过国密与国际双算法签名实现启动链可信执行的基础保障,广泛应用于政务、金融等对启动完整性有明确合规要求的场景。
一、Secure Boot 的验证链条与执行逻辑
Secure Boot 并非单一开关,而是一套贯穿启动全过程的签名验证体系。其验证顺序严格遵循“前一级验证后一级”的链式结构:UEFI 固件首先验证内置的平台密钥(PK),再用 PK 验证密钥交换密钥(KEK);KEK 进而验证数据库密钥(db),最终由 db 中预置的公钥验证 Shim 引导程序的签名;Shim 再验证 GRUB2 的签名,GRUB2 最终验证 Linux 内核镜像 vmlinuz 及 initramfs 的签名。每一环节均采用符合 X.509 标准的数字证书,且银河麒麟等系统已集成 SM2 国密算法签名支持,实现对引导组件的双重算法校验。该流程确保从固件到内核的每段可执行代码均源自可信来源,杜绝了未授权 rootkit 或篡改引导扇区的恶意代码注入可能。
二、启用 Secure Boot 的实操前提与路径
启用该功能需同时满足三项硬性条件:主板必须运行在纯 UEFI 模式(禁用 CSM/Legacy 支持)、固件中预置有效平台密钥、操作系统安装介质本身具备合规签名。以主流平台为例,操作路径明确为:重启进入 BIOS/UEFI 设置界面(ASUS 主板为 Boot → Secure Boot → OS Type 设为 Windows UEFI Mode;Dell 机型为 Security → Secure Boot → Enable;HP 则需先在 System Configuration → Boot Options 中开启 Secure Boot Control)。若选项呈灰色不可调,大概率因当前 Boot Mode 仍处于 Legacy 模式,须先切换至 UEFI Only 并保存退出,重启后再进入设置即可激活。
三、兼容性适配与必要调整事项
启用 Secure Boot 后,未经签名的第三方驱动、自定义内核模块或部分 Linux 发行版安装镜像将无法加载。实际部署中需针对性处理:对于 Ubuntu、Fedora 等主流发行版,其安装介质默认携带 Microsoft 签名的 Shim,可直接通过验证;而深度定制内核则需使用厂商提供的签名工具(如 sbsign)配合私钥重新签名 vmlinuz 与 grubx64.efi,并将对应公钥导入 UEFI db 数据库。银河麒麟系统已预置国密 SM2 签名的完整启动组件链,用户仅需确认 BIOS 中 Secure Boot 处于 Enabled 状态,无需额外导入密钥即可完成全链路校验。
四、关闭 Secure Boot 的风险提示与适用场景
尽管在调试驱动、安装某些旧版 Linux 或运行虚拟化测试环境时可能需要临时关闭 Secure Boot,但此举将使系统暴露于启动级攻击面——例如 Evil Maid 攻击可通过物理接触替换引导文件实施持久化入侵。因此,除开发验证等明确可控场景外,政务终端、金融终端及 Windows 11 设备均严禁长期关闭该功能。根据政府采购标准,所有入围机型必须通过固件层安全启动认证,且在出厂前已完成 PK/KEK/db 密钥固化与签名验证闭环测试。
综上,Secure Boot 是现代计算设备启动安全不可替代的基石机制,其实现既依赖固件规范,也需操作系统与硬件厂商协同构建可信签名生态。




