Adicionar chave de inicialização segura à distribuição ao vivo

Adicionar chave de inicialização segura à distribuição ao vivo

Eu queria perguntar se era possível carregar uma chave em minha distribuição de persistência ao vivo para passar pelo Secure Boot sem desabilitar. Imagino que a resposta provavelmente seja não, mas tive vontade de perguntar de qualquer maneira.

Responder1

Você não disse para que deseja a chave, mas no Ubuntu eu faço isso periodicamente para assinar os drivers manualmente. Meu driver BroadCom WiFi é de terceiros e não assinado, e eu uso o seguinte script sempre que um novo kernel é instalado:-

#!/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

Eu precisei da -copção apenas uma vez para criar inicialmente os arquivos-chave. Após o uso, -co sistema precisa ser reinicializado e a nova chave aceita no firmware UEFI.

Tenho scripts semelhantes para outros drivers não assinados, especialmente os drivers VMware, que são compilados dinamicamente e, portanto, nunca podem ser assinados.

Como Kali e Ubuntu são derivados do Debian, espero que as estruturas de diretórios do sistema sejam semelhantes. Observe que o sign-fileprograma está instalado nos cabeçalhos do kernel, portanto linux-headers-*precisará ser instalado para o seu kernel. Existe um kmodsignprograma em /usr/bin/, que pode ser uma alternativa, mas ainda não experimentei.

Não me lembro onde encontrei esta informação, por isso não posso identificar sua fonte.

informação relacionada