トップ «前の日記 最新 次の日記»

2026-04-22 (We) [長年日記]

_ 原神 - リンネアの授業

「飴細工・リンネア」をもらった。 これ、ほとんど効果がないのに23時間後に期限切れって、 どうしたらいいんだ ^^;

_ secure boot 障害

納得いかない。先日の日記を見ても、Windows Update が入り込むタイミングなんてないじゃん。

というわけで、例によって gemini と相談しながら設定を調査・対処していった。

まず、

# pesign -i /efi/EFI/Limine/BOOTX64.EFI -l
---------------------------------------------
certificate address is 0x7f0bad4c3008
Content was not encrypted.
Content is detached; signature cannot be verified.
The signer's common name is MosbyKey [2026.04.21]
No signer email address.
Signing time: Tue Apr 21, 2026
There were certs or crls included.
---------------------------------------------

Content is detached が問題らしい。署名がバイナリに埋め込まれていない。 だから signature cannot be verified。

埋め込みたいんだけど、pesign にはその方法がないらしく、sbsign に切り替えることにした。

使い方的には↓こんな感じ。

sbsign --key /etc/pki/pesign_luna/MosbyKey.nopass.pem \
       --cert /etc/pki/pesign_luna/MosbyKey.crt \
       --output /efi/EFI/Limine/BOOTX64.EFI \
       /tmp/a.efi

/tmp/a.efi は、config の b2sum を enroll-config したもの。

nopass は↓で作った。

openssl rsa -in MosbyKey.key -out MosbyKey.nopass.key

sbverify で確認。確認方法は↓。

# sbverify --cert /etc/pki/pesign_luna/MosbyKey.crt /efi/EFI/Limine/BOOTX64.EFI
Signature verification OK

この BOOTX64.EFI で Limine は起動できた。

ただ、linux kernel も同じ方法を使ってたので、こちらも sbsign に切り替える。

UKI (Unified Kernel Image) 方式。

これまで、/etc/initcpio/post/uki-pesign を作って、そこで pesign してたんだけど、 uki-sbsign を使うようにした (なんでか、私のはもうちょっと複雑。なんで?このページのスクリプトが最近簡素になった??)。

直った…

結局、何が変わったのかは判らないままだけど、回復はできた。

ん?あれ?

# pesign -i /efi/EFI/Limine/BOOTX64.EFI -l
---------------------------------------------
certificate address is 0x7f91f1c21008
Content was not encrypted.
Content is detached; signature cannot be verified.
The signer's common name is MosbyKey [2026.04.21]
No signer email address.
Signing time: Wed Apr 22, 2026
There were certs or crls included.
---------------------------------------------
# sbverify --cert /etc/pki/pesign_luna/MosbyKey.crt /efi/EFI/Limine/BOOTX64.EFI
Signature verification OK
#

おかしいなぁ・・・・ pesign はダメ言うてるけど sbverify は OK って言ってる。

まぁ、secureboot 用には sbsign/sbverify 使え、ってことでいいのだろうな ^^;

あと、証明書の親子関係なんだけど、

luna:~ % mokutil --pk |sed -n -e '/^.key/p' -e '/Issuer:/p' -e '/Subject:/p'
[key 1]
        Issuer: CN=Mosby Generated PK [2026.04.21]
        Subject: CN=Mosby Generated PK [2026.04.21]
luna:~ % mokutil --kek |sed -n -e '/^.key/p' -e '/Issuer:/p' -e '/Subject:/p'
[key 1]
        Issuer: C=US, ST=Washington, L=Redmond, O=Microsoft Corporation, CN=Microsoft Corporation Third Party Marketplace Root
        Subject: C=US, ST=Washington, L=Redmond, O=Microsoft Corporation, CN=Microsoft Corporation KEK CA 2011
[key 2]
        Issuer: C=US, O=Microsoft Corporation, CN=Microsoft RSA Devices Root CA 2021
        Subject: C=US, O=Microsoft Corporation, CN=Microsoft Corporation KEK 2K CA 2023
luna:~ %

これはもう、そういうもんなんだろうな。

それと、MosbyKey [2026.04.21] は db に入ってる。efi-readvar -v db で確認できる。 Mosby がここにも入れるんだろうな。

今となっては全然解らないのが、何故 sbsign をやめて pesign にしたか。 以前の日記に、「使い方がよく解らなかったので、理解できた pesign で」とか書いてある。 sbsign の何がそんなに難しかった? むしろ簡単じゃん。解せぬ…

_ NTE

事前登録済み。


編集 パスワード変更