将安全启动密钥添加到 Live Distro

将安全启动密钥添加到 Live Distro

我想问一下,是否可以将密钥加载到我的实时持久性发行版中,以便在不禁用的情况下绕过安全启动?我想答案可能是否定的,但我还是想问一下。

答案1

您还没有说要密钥做什么,但在 Ubuntu 上,我会定期执行此操作以手动签名驱动程序。我的 BroadCom WiFi 驱动程序是第三方的且未签名,每次安装新内核时我都会使用以下脚本:-

#!/bin/bash
if [ "$(whoami)" != "root" ]
then echo "wlsign: must be called from 'root'"
elif [ -z "$1" -o "$1" == "-c" ]
then
     [ "$1" == "-c" ] && \
     openssl req -new -x509 -newkey rsa:2048 -keyout wl.priv -outform DER -out wl.der -nodes -days 36500 -subj "/CN=BroadCom/"
     /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./wl.priv ./wl.der $(modinfo -n wl)
     [ "$1" == "-c" ] && mokutil --import wl.der
     [ "$1" == "-c" ] && echo Now reboot and select MOK install || modprobe wl
else
     [ "$1" != "-h" ] && echo "wlsign: invalid options - $@"
     echo 'wlsign [-c|-h] : signs proprietary Wireless kernel drivers'
     echo '            -c : create new keys (default: use existing)'
     echo '            -h : give this help information'
fi

-c只需要一次该选项来最初创建密钥文件。使用后,-c系统需要重新启动,并将新密钥接受到 UEFI 固件中。

我有针对其他未签名驱动程序的类似脚本,特别是 VMware 驱动程序,它们是即时编译的,因此永远无法签名。

由于 Kali 和 Ubuntu 都是 Debian 的衍生产品,我希望系统目录结构相似。请注意,该sign-file程序安装在内核头文件中,因此linux-headers-*需要为您的内核安装。kmodsign中有一个程序/usr/bin/,可能是另一种选择,但我还没有尝试过。

我不记得在哪里找到这个信息,所以我无法确认它的来源。

相关内容