archlinuxでセキュアブート with grub (鍵)

こっち(2021-03-09-arch-secureboot)が古くなってたので書きました。 いちいちhashをenrollしなくてもいい版です。 インストール yay -S shim-signed mokutil sbsigntools 鍵作成 mkdir -p /var/lib/shim-signed/mok cd !$ openssl req -newkey rsa:4096 -noenc -keyout MOK.key -new -x509 -sha256 -days 3650 -subj "/CN=my Machine Owner Key/" -out MOK.crt openssl x509 -outform DER -in MOK.crt -out MOK.cer # MokManagerにenrollするのにDERフォーマットな証明書が必要 grubのstandalone版を生成 grub-mkconfig -o /tmp/grub.cfg grub-mkstandalone -O x86_64-efi --sbat=/usr/share/grub/sbat.csv -o /boot/efi/EFI/artix/grubx64.efi "/boot/grub/grub.cfg=/tmp/grub.cfg" さっきの鍵で起動したいファイルに署名 sbsign --key MOK.key --cert MOK.crt --output /boot/vmlinuz-linux /boot/vmlinuz-linux sbsign --key MOK.key --cert MOK.crt --output /boot/efi/EFI/artix/grubx64.efi /boot/efi/EFI/artix/grubx64....

December 12, 2022 · 1 min · soracat

virt-managerで(u)efi bootしたい

edk2-ovmf をいれます それだけです sudo pacman -S edk2-ovmf ウオー 手軽、すばらしいarchlinux

July 19, 2021 · 1 min · soracat

archlinuxでセキュアブート(ハッシュ登録版)

grubの場合 bootパーティションが/bootにマウントされていてefiパーティションが/boot/efiにマウントされている場合の例です yay -S shim-signed sudo cp /usr/share/shim-signed/shimx64.efi /boot/efi/EFI/arch/BOOTX64.efi sudo cp /usr/share/shim-signed/mmx64.efi /boot/efi/EFI/arch/ sudo efibootmgr --verbose --disk /dev/nvme0n1 --part 1 --create --label "Shim" --loader "\EFI\arch\BOOTX64.efi" あとはBOOTX64.efiを起動してgrubx64.efiのhashを登録する systemd-bootの場合 /bootをefiパーティションとして使っている場合,主にsystemd-boot yay -S preloader-signed sudo cp /usr/share/preloader-signed/{PreLoader,HashTool}.efi /boot/EFI/systemd sudo mv /boot/EFI/systemd/systemd-bootx64.efi /boot/EFI/systemd/loader.efi cd ~ sudo efibootmgr --verbose --disk /dev/nvme0n1 --part 1 --create --label "PreLoader" --loader "\EFI\systemd\PreLoader.efi" どちらもカーネルとefiバイナリのhashを登録しないと起動しません ここでハマりました https://wiki.archlinux.jp/index.php/%E3%82%BB%E3%82%AD%E3%83%A5%E3%82%A2%E3%83%96%E3%83%BC%E3%83%88

March 9, 2021 · 1 min · soracat