21.6. 公開鍵と秘密鍵の生成
セキュアブート対応システムでカスタムカーネルまたはカスタムカーネルモジュールを使用するには、X.509 の公開鍵と秘密鍵のペアを生成する必要があります。生成された秘密鍵を使用して、カーネルまたはカーネルモジュールに署名できます。また、対応する公開鍵をセキュアブートの Machine Owner Key (MOK) に追加することで、署名済みのカーネルまたはカーネルモジュールを検証できます。
強力なセキュリティー対策とアクセスポリシーを適用して、秘密鍵の内容を保護します。悪用すれば、この鍵は、一致する公開鍵で認証されるシステムのセキュリティーに危害を与えるために使用できます。
手順
X.509 の公開鍵と秘密鍵のペアを作成します。
カスタムカーネル モジュール に署名するだけの場合:
# efikeygen --dbdir /etc/pki/pesign \ --self-sign \ --module \ --common-name 'CN=Organization signing key' \ --nickname 'Custom Secure Boot key'カスタム カーネル に署名する場合:
# efikeygen --dbdir /etc/pki/pesign \ --self-sign \ --kernel \ --common-name 'CN=Organization signing key' \ --nickname 'Custom Secure Boot key'RHEL システムが FIPS モードを実行している場合:
# efikeygen --dbdir /etc/pki/pesign \ --self-sign \ --kernel \ --common-name 'CN=Organization signing key' \ --nickname 'Custom Secure Boot key' --token 'NSS FIPS 140-2 Certificate DB'注記FIPS モードでは、
efikeygenが PKI データベース内でデフォルトの "NSS Certificate DB" トークンを検索できるように、--tokenオプションを使用する必要があります。公開鍵と秘密鍵は
/etc/pki/pesign/ディレクトリーに保存されます。
セキュリティー上、署名鍵の有効期間内にカーネルとカーネルモジュールに署名することが推奨されます。ただし、sign-file ユーティリティーは警告を出さず、鍵は有効期限に関係なく RHEL 9 で使用できます。