Como ativar o secure boot no arch linux?

Estou tentando ativar o secure boot na minha instalação do Arch Linux, mas estou recebendo o seguinte erro:

➜  ~ sbctl status
Installed:	✓ sbctl is installed
Owner GUID:	4d2c1681-a425-4705-a67f-c3a80d64cb8f
Setup Mode:	✓ Disabled
Secure Boot:	✗ Disabled
Vendor Keys:	microsoft builtin-db builtin-db builtin-db builtin-KEK builtin-PK
➜  ~ sudo sbctl create-keys
[sudo] password for dorio: 
Created Owner UUID 4d2c1681-a425-4705-a67f-c3a80d64cb8f
Creating secure boot keys...✓ 
Secure boot keys created!
➜  ~ sudo sbctl enroll-keys -m
Your system is not in Setup Mode! Please reboot your machine and reset secure boot keys before attempting to enroll the keys.

Tenho uma chave do windows que ja veio de fábrica na placa-mãe, e tenho uma instalação do mesmo em outro disco. Imagino que talvez tenha algo a ver.

Tentei resetart as chaves na bios, como sugere o erro, mas não encontrei exatamente essa opção. De qualquer forma, resetei as configurações da bios para os padrões de fabriga, e tentei resetar as configurações de boot tambem.

Se a sua BIOS não permite a inserção de chaves customizadas do secure boot, não tem o que fazer. Na minha, nas opções do seucre boot, há uma opção chamada “set keys to setup mode”, que permite que o sistema operacional modifique as chaves do secure boot da BIOS. Ela é necessária para que o sbctl insira as chaves das imagens do kernel e initramfs assinadas por ele.

Caso não consiga fazer com o Arch o Ubuntu já é tudo assinado.

Olá bom dia,para que você,@JorgeDorio, ative o Secure Boot no Arch Linux isto envolve várias etapas, incluindo a configuração do firmware UEFI, a instalação de pacotes necessários e a assinatura de binários.
Aqui está um guia passo a passo:

1- Pré-requisitosFirmware UEFI: Certifique-se de que seu sistema suporta e está configurado para UEFI.

2- Partição EFI: O sistema deve ter uma partição EFI montada em /boot/efi.

Etapas para ativar o Secure BootHabilitar o Secure Boot no UEFI:

  1. Você deve reiniciar seu computador e entrar na configuração do firmware UEFI (normalmente pressionando uma tecla como F2, F10, F12, Del ou Esc durante o boot).

  2. Ative o Secure Boot nas configurações do firmware.

Instale os pacotes necessários:

• Abra um terminal e instale os pacotes necessários:

sudo pacman -S sbsigntools efibootmgr

  1. Gere uma chave de assinatura:

• Gere uma chave pública e privada para assinar os binários:

openssl req -new -x509 -newkey rsa:2048 -keyout /root/db.key -out /root/db.crt -days 3650 -nodes -subj “/CN=Secure Boot Signing/”
openssl x509 -outform DER -in /root/db.crt -out /root/db.der

  1. Assine também,@JorgeDorio, o bootloader e kernel:

• Assine o GRUB (ou outro bootloader) e o kernel com a chave gerada:

sbsign --key /root/db.key --cert /root/db.crt --output /boot/efi/EFI/boot/bootx64.efi /boot/efi/EFI/boot/bootx64.efi
sbsign --key /root/db.key --cert /root/db.crt --output /boot/efi/EFI/arch/vmlinuz-linux /boot/efi/EFI/arch/vmlinuz-linux

  1. Adicionar a chave ao UEFI:

• Use a ferramenta efi-updatevar para adicionar a chave ao firmware:

sudo efi-updatevar -e -f /root/db.der db

  1. Configure também o GRUB para o Secure Boot:

• Edite o arquivo de configuração do GRUB (/etc/default/grub) para incluir parâmetros de Secure Boot.

• Atualize a configuração do GRUB:

sudo grub-mkconfig -o /boot/grub/grub.cfg

  1. Reboot:
    Reinicie o sistema e verifique se o Secure Boot está ativado e funcionando corretamente.

{Verificação}

Para verificar se o Secure Boot está funcionando, você pode usar a ferramenta mokutil:

sudo pacman -S mokutil
mokutil --sb-state

  • Isso deve retornar que o Secure Boot está habilitado.

Agora cidadão @JorgeDorio, tentando eu uma solução ao erro apresentado na sua máquina:

Pela minha experiência Jorge, este erro indica que o Secure Boot está habilitado, mas o sistema não está em Modo de Configuração (Setup Mode). Para resolver isso, você precisa redefinir as chaves do Secure Boot no firmware UEFI, o que permitirá que você entre no Setup Mode e, em seguida, insira suas próprias chaves.

Aqui algumas sugestões com passos detalhados para o Sr. resolver isso:

  1. Acesse as Configurações de Firmware UEFI:

• Reinicie seu computador e entre na configuração do firmware UEFI. Isso geralmente é feito pressionando uma tecla como F2, F10, F12, Del ou Esc durante o boot, dependendo do fabricante do seu computador.

  1. Redefina as Chaves de Secure Boot:

• Nas configurações do firmware UEFI, procure uma opção para gerenciar chaves de Secure Boot. O nome exato dessa opção pode variar, mas pode ser algo como “Secure Boot”, “Key Management”, ou “Reset to Setup Mode”.

• Encontre e selecione a opção para redefinir para o modo de configuração (Setup Mode). Isso geralmente é chamado de “Reset to Setup Mode”, “Clear Secure Boot Keys” ou algo semelhante.

  1. Reinicie e Volte ao Sistema:

• Salve as configurações e saia do firmware UEFI.

• Reinicie o computador e inicialize no Arch Linux.

  1. Enrole suas Chaves Novamente:

• Após reiniciar no Arch Linux, execute os comandos novamente para criar e enrolar as chaves:

sudo sbctl create-keys
sudo sbctl enroll-keys -m

{Passos Detalhados no seu Arch Linux}

Certifique-se de que os pacotes necessários estão instalados:

sudo pacman -S sbctl efibootmgr

Verifique se sbctl está instalado corretamente:

sbctl status

Crie também Jorge,as chaves de Secure Boot:

sudo sbctl create-keys

Enrole as chaves no sistema:

sudo sbctl enroll-keys -m

Note bem você que Se tudo estiver correto, sbctl status deve indicar que o Secure Boot está habilitado.

{Nota importante}

Se ainda estiver com dificuldades, verifique a documentação do seu firmware UEFI, pois as opções podem variar dependendo do fabricante e do modelo da placa-mãe.

Deixa mais detalhes de sua máquina,caso não consiga eu te ajudar com estas correções explicativas acima, outros usuários da comunidade possa te ajudar. Estou saindo agora para o trampo, volto aqui mais tarde, boa sorte.

2 curtidas

Salvou demais Aqua, valeu!

Um procedimento bem mais simples para quem não está interessado em possíveis benefícios de segurança e só quer agradar o Windows 10/11 e os Vanguards da vida é o mokutil --disable-validation, que está explicado na seção sobre o shim do Debian na Wiki.

O procedimento é basicamente uma porta dos fundos no Secure Boot, se quiser evitar possíveis rootkits, use o procedimento desse tópico ou literalmente qualquer outra seção da página acima.