Nastavenie Secure Boot
sbctl je užívateľsky prívetivý správca kľúčov pre secure boot, ktorý umožňuje nastaviť secure boot,
ponúka možnosti správy kľúčov a sleduje súbory, ktoré je potrebné podpísať v reťazci spúšťania.
Inštalácia sbctl
Section titled “Inštalácia sbctl”❯ sudo pacman -S sbctlPrednastavenie
Section titled “Prednastavenie”Boot Manager GRUB
Section titled “Boot Manager GRUB”Ak používate GRUB, spustením nasledujúceho príkazu povolíte podporu secure boot v GRUB pomocou CA kľúčov.
❯ sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=cachyos --modules="tpm" --disable-shim-lockVstup do režimu nastavenia v UEFI
Section titled “Vstup do režimu nastavenia v UEFI”Najprv musíme prejsť do nastavení firmvéru a nastaviť režim secure boot na “Setup Mode”. Môžete reštartovať z už spusteného systému do nastavení firmvéru pomocou nasledujúceho príkazu.
❯ systemctl reboot --firmware-setup
Takto vyzerá BIOS na Lenovo Ideapad 5 Pro. Resetujte do režimu nastavenia alebo obnovte továrenské kľúče a reštartujte späť do systému.
Nastavenie sbctl
Section titled “Nastavenie sbctl”❯ sudo sbctl status # Ak je povolený režim nastavenia, môžeme pokračovať ďalším krokomInstalled: ✘ sbctl nie je nainštalovanýSetup Mode: ✘ PovolenýSecure Boot ✘ Zakázaný
❯ sudo sbctl create-keys # Vytvorte si vlastné kľúče pre secure bootCreated Owner UUID a9fbbdb7-a05f-48d5-b63a-08c5df45ee70Creating secure boot keys...✔Secure boot kľúče vytvorené!
❯ sudo sbctl enroll-keys -m # Zaregistrujte svoje kľúče pomocou kľúčov od MicrosoftuEnrolling keys to EFI variables...✔Kľúče zaregistrované do EFI premenných!
❯ sudo sbctl status# sbctl by mal byť teraz nainštalovaný a môžeme pokračovať v podpisovaní obrazov jadra a boot manageraInstalled: ✔ sbctl je nainštalovanýOwner GUID: a9fbbdb7-a05f-48d5-b63a-08c5df45ee70Setup Mode: ✔ ZakázanýSecure Boot ✘ ZakázanýVendor Keys: microsoftPodpisovanie obrazu jadra a Boot Managera
Section titled “Podpisovanie obrazu jadra a Boot Managera”CachyOS poskytuje skript sbctl-batch-sign,
ktorý preberá zoznam súborov, ktoré je potrebné podpísať, z sudo sbctl verify a podpíše ich všetky.
❯ sudo sbctl verifyVerifying file database and EFI images in /boot...✘ /boot/1c4b5246eef05ac3bc87339323cd5101/6.10.0-cn4.0.fc40.x86_64/linux is not signed✘ /boot/EFI/BOOT/BOOTX64.EFI is not signed✘ /boot/EFI/systemd/systemd-bootx64.efi is not signed✘ /boot/1c4b5246eef05ac3bc87339323cd5101/0-rescue/linux is not signed✘ /boot/1c4b5246eef05ac3bc87339323cd5101/6.10.0-cn3.0.fc40.x86_64/linux is not signed
❯ sudo sbctl-batch-sign
❯ sudo sbctl verifyVerifying file database and EFI images in /boot...✔ /boot/1c4b5246eef05ac3bc87339323cd5101/6.10.0-cn4.0.fc40.x86_64/linux is signed✔ /boot/EFI/BOOT/BOOTX64.EFI is signed✔ /boot/EFI/systemd/systemd-bootx64.efi is signed✔ /boot/1c4b5246eef05ac3bc87339323cd5101/0-rescue/linux is signed✔ /boot/1c4b5246eef05ac3bc87339323cd5101/6.10.0-cn3.0.fc40.x86_64/linux is signedTeraz, keď sú všetky súbory podpísané, môžeme reštartovať späť do nastavení UEFI a povoliť secure boot.
Upozorňujeme, že ide o jednorazový proces, pretože podpisovanie súborov s príznakom -s uloží tieto súbory do databázy sbctl.
sbctl sa dodáva s pacman hookom, čo znamená, že automaticky
podpíše všetky nové súbory pri aktualizácii jadra alebo boot managera.
systemd-boot
Section titled “systemd-boot”CachyOS používa systemd-boot-update.service poskytovaný systémom systemd na aktualizáciu boot managera pri reštarte. To znamená, že
pacman hook sbctl nepodpíše aktualizované EFI binárne súbory. Ako riešenie môžeme podpísať boot manager priamo.
❯ sudo sbctl sign -s -o /usr/lib/systemd/boot/efi/systemd-bootx64.efi.signed /usr/lib/systemd/boot/efi/systemd-bootx64.efiOverenie, že je Secure Boot povolený
Section titled “Overenie, že je Secure Boot povolený”Ak chcete overiť, či je secure boot skutočne povolený, môžete spustiť jeden z nasledujúcich príkazov.
❯ sudo sbctl statusInstalled: ✓ sbctl je nainštalovanýOwner GUID: a9fbbdb7-a05f-48d5-b63a-08c5df45ee70Setup Mode: ✓ ZakázanýSecure Boot: ✓ PovolenýVendor Keys: microsoft
❯ bootctlSystem: Firmware: UEFI 2.80 (INSYDE Corp. 28724.16435) Firmware Arch: x64 Secure Boot: enabled (user) TPM2 Support: yes Measured UKI: no Boot into FW: supportedOdkazy a Poďakovania
Section titled “Odkazy a Poďakovania”- Arch Wiki položila základy pre túto príručku. Väčšina vecí tu bola prevzatá odtiaľ.
- sbctl - Táto jednoduchá príručka na povolenie podpory secure boot by nebola možná, keby nebolo skvelej práce vykonanej pri vytváraní tohto softvéru.
- Improving the Secure Boot Experience od Mortena linderuda - Blogový príspevok od Mortena
“Foxboron” Linderuda o tom, aké komplikované bolo používanie secure boot pred
sbctl.