Konfiguracja Secure Boot
sbctl to przyjazny dla użytkownika menedżer kluczy bezpiecznego rozruchu, który umożliwia konfigurację bezpiecznego rozruchu, oferuje możliwości zarządzania kluczami i śledzi pliki, które muszą być podpisane w łańcuchu rozruchowym.
Instalacja sbctl
Dział zatytułowany „Instalacja sbctl”sudo pacman -S sbctlKonfiguracja wstępna
Dział zatytułowany „Konfiguracja wstępna”Menedżer rozruchu GRUB
Dział zatytułowany „Menedżer rozruchu GRUB”Jeśli używasz GRUB-a, uruchom następujące polecenie, aby włączyć obsługę bezpiecznego rozruchu w GRUB-ie przy użyciu kluczy CA.
sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=cachyos --modules="tpm" --disable-shim-lockWejście w tryb konfiguracji (Setup Mode) w UEFI
Dział zatytułowany „Wejście w tryb konfiguracji (Setup Mode) w UEFI”Najpierw musimy przejść do ustawień oprogramowania układowego (firmware) i ustawić tryb bezpiecznego rozruchu na „Setup Mode”. Możesz ponownie uruchomić system z już działającego systemu do ustawień oprogramowania układowego za pomocą następującego polecenia.
systemctl reboot --firmware-setup
Tak wygląda BIOS na Lenovo Ideapad 5 Pro. Zresetuj do trybu konfiguracji lub przywróć klucze fabryczne i uruchom ponownie system.
Jednak niektóre płyty główne MSI nie mają trybu konfiguracji. Aby osiągnąć ten sam efekt, wykonaj dwa kroki z poniższego obrazka:

Konfiguracja sbctl
Dział zatytułowany „Konfiguracja sbctl”sudo sbctl status # Jeśli tryb konfiguracji jest włączony, możemy przejść do następnego krokuInstalled: ✘ sbctl is not installedSetup Mode: ✘ EnabledSecure Boot ✘ Disabled
sudo sbctl create-keys # Utwórz swoje niestandardowe klucze bezpiecznego rozruchuCreated Owner UUID a9fbbdb7-a05f-48d5-b63a-08c5df45ee70Creating secure boot keys...✔Secure boot keys created!
sudo sbctl enroll-keys --microsoft # Zarejestruj swoje klucze wraz z kluczami MicrosoftuEnrolling keys to EFI variables...✔Enrolled keys to the EFI variables!
sudo sbctl status# sbctl powinien być już zainstalowany, możemy przejść do podpisywania obrazów jądra i menedżera rozruchuInstalled: ✔ sbctl is installedOwner GUID: a9fbbdb7-a05f-48d5-b63a-08c5df45ee70Setup Mode: ✔ DisabledSecure Boot ✘ DisabledVendor Keys: microsoftPodpisywanie obrazu jądra i menedżera rozruchu
Dział zatytułowany „Podpisywanie obrazu jądra i menedżera rozruchu”CachyOS dostarcza sbctl-batch-sign,
skrypt, który pobiera listę plików do podpisania z sudo sbctl verify i podpisuje je wszystkie.
Użytkownicy Limine powinni przejść do Limine.
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, gdy wszystkie pliki są podpisane. Uruchom ponownie komputer i przejdź do ustawień UEFI, aby włączyć Bezpieczny rozruch.
Należy pamiętać, że jest to proces jednorazowy, ponieważ podpisanie plików za pomocą flagi -s zapisze te pliki w bazie danych sbctl.
systemd-boot
Dział zatytułowany „systemd-boot”CachyOS używa systemd-boot-update.service dostarczanego przez systemd do aktualizacji menedżera rozruchu przy ponownym uruchomieniu. Oznacza to, że hak pacmana
sbctl nie podpisze zaktualizowanych plików binarnych EFI. Jako obejście tego problemu możemy podpisać menedżer rozruchu bezpośrednio.
sudo sbctl sign -s -o /usr/lib/systemd/boot/efi/systemd-bootx64.efi.signed /usr/lib/systemd/boot/efi/systemd-bootx64.efiLimine to specjalny menedżer rozruchu, który pozwala na sprawdzanie skrótów (hashy) obrazów jądra
i innych plików, których Limine używa podczas rozruchu. Jeśli jest to włączone, jakakolwiek
ręczna konfiguracja wykonana przez użytkownika, np. podpisanie obrazu za pomocą
sbctl-batch-sign, zmodyfikuje skrót odpowiednich plików i
spowoduje niepowodzenie weryfikacji sum kontrolnych przez Limine.
Jednak podpisywanie tych plików nie jest konieczne w przypadku Limine, ponieważ ma on specjalny proces rozruchowy, który omija ładowanie łańcuchowe EFI (chainloading) i sprawdzanie podpisów. Jedyne pliki binarne EFI, które muszą być podpisane, to sam Limine.
Aby włączyć automatyczną rejestrację sumy kontrolnej konfiguracji, ustaw następującą opcję w /etc/default/limine:
ENABLE_ENROLL_LIMINE_CONFIG=yesNastępnie uruchom:
# Użyj limine-enroll-config, aby zarejestrować sumę kontrolną konfiguracji i podpisać plik binarny EFI Limine# To używa sbctl pod spodemsudo limine-enroll-configsudo limine-updateSprawdź, czy bezpieczny rozruch jest włączony
Dział zatytułowany „Sprawdź, czy bezpieczny rozruch jest włączony”Aby sprawdzić, czy bezpieczny rozruch jest rzeczywiście włączony, możesz uruchomić jedno z następujących poleceń
sudo sbctl statusInstalled: ✓ sbctl is installedOwner GUID: a9fbbdb7-a05f-48d5-b63a-08c5df45ee70Setup Mode: ✓ DisabledSecure Boot: ✓ EnabledVendor 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: supportedLinki i podziękowania
Dział zatytułowany „Linki i podziękowania”- The Arch Wiki położyło podwaliny pod ten przewodnik. Większość materiałów została zaczerpnięta stamtąd.
- sbctl - Ten prosty przewodnik po włączaniu obsługi bezpiecznego rozruchu nie byłby możliwy, gdyby nie niesamowita praca włożona w stworzenie tego oprogramowania.
- Improving the Secure Boot Experience by Morten linderud - Wpis na blogu Mortena
“Foxboron” Linderuda o tym, jak skomplikowane było doświadczenie z bezpiecznym rozruchem przed
sbctl.