Red Hat Training

A Red Hat training course is available for RHEL 8

3.9. 秘密鍵でカーネルに署名する

UEFI セキュアブート機能が有効になっている場合は、署名済みカーネルをロードすると、システムのセキュリティーを強化できます。このセクションでは、既存の秘密鍵を使用して、カーネルに署名する方法について説明します。カーネルモジュールに署名するだけでよい場合は、このセクションをスキップできます。

前提条件

手順

  • x64 アーキテクチャーの場合:

    1. 署名済みイメージを作成します。

      # pesign --certificate 'Custom Secure Boot key' \
               --in vmlinuz-version \
               --sign \
               --out vmlinuz-version.signed

      versionvmlinuz ファイルのバージョン接尾辞に置き換え、Custom Secure Boot key を以前に選択した名前に置き換えます。

    2. オプション: 署名を確認します。

      # pesign --show-signature \
               --in vmlinuz-version.signed
    3. 未署名イメージを署名済みイメージで上書きします。

      # mv vmlinuz-version.signed vmlinuz-version
  • 64 ビット ARM アーキテクチャーの場合:

    1. vmlinuz ファイルを解凍します。

      # zcat vmlinuz-version > vmlinux-version
    2. 署名済みイメージを作成します。

      # pesign --certificate 'Custom Secure Boot key' \
               --in vmlinux-version \
               --sign \
               --out vmlinux-version.signed
    3. オプション: 署名を確認します。

      # pesign --show-signature \
               --in vmlinux-version.signed
    4. vmlinux ファイルを圧縮します。

      # gzip --to-stdout vmlinux-version.signed > vmlinuz-version
    5. 圧縮されていない vmlinux ファイルを削除します。

      # rm vmlinux-version*