Red Hat Training

A Red Hat training course is available for RHEL 8

3.2. UEFI セキュアブートとは

Unified Extensible Firmware Interface (UEFI) セキュアブート技術を使用すると、システムブートローダーが暗号化キーで署名されるようにできます。ファームウェアに含まれる公開鍵のデータベースは、署名鍵を承認します。次のステージのブートローダーおよびカーネルで署名を検証できます。その結果、信頼できるキーによって署名されていないカーネル空間コードの実行を防ぐことができます。

UEFI セキュアブートは、以下のようにファームウェアから署名済みドライバーおよびカーネルモジュールへの信頼チェーンを確立します。

  • UEFI 秘密鍵が shim 第 1 ステージブートローダーに署名し、それを公開鍵が認証します。認証局 (CA) は公開鍵に署名します。CA はファームウェアのデータベースに保存されます。
  • shim ファイルには、GRUB ブートローダーとカーネルを認証するための Red Hat 公開鍵 Red Hat Secure Boot (CA key 1) が含まれています。
  • カーネルには、ドライバーおよびモジュールを認証する公開鍵が含まれます。

セキュアブートは、UEFI 仕様のブートパス検証コンポーネントです。この仕様は、以下を定義します。

  • 揮発性ではないストレージでの暗号で保護された UEFI 変数用のプログラミングインターフェイス
  • UEFI 変数での信頼できる X.509 ルート証明書の保存
  • ブートローダーやドライバーなどの UEFI アプリケーションの検証
  • 既知の問題のある証明書およびアプリケーションハッシュを無効にする手順

UEFI セキュアブートは、第 2 ステージブートローダーのインストールや削除を妨ぎません。また、このような変更のユーザーによる明示的な確認を必要としません。署名は、ブートローダーのインストールや更新時ではなく、起動時に検証されます。したがって、UEFI セキュアブートはブートパスの操作を停止しません。これは、不正な変更の検出に役立ちます。

ブートローダーまたはカーネルがシステムで信頼できる鍵で署名されていない場合、Secure Boot は起動できなくなります。