第5章 セキュアブートを使用した AWS 上の RHEL の設定


Amazon Web Services (AWS) 上の Red Hat Enterprise Linux (RHEL) インスタンスのブートセキュリティーを強化するには、セキュアブートを設定します。セキュアブートは、起動時にブートローダーやその他のコンポーネントのデジタル署名を検証し、信頼できるプログラムのみをロードできるようにし、不正なプログラムのロードをブロックします。

5.1. クラウド上の RHEL のセキュアブートについて

セキュアブートは、改ざんされたコンポーネントや信頼できない組織によって署名されたコンポーネントを検出すると、ブートプロセスを中止します。セキュアブートは、信頼できるエンティティーだけをブートチェーンに参加させるという点で、Confidential Virtual Machine (CVM) の設定において重要な役割を果たします。

セキュアブートは、UEFI (Unified Extensible Firmware Interface) の機能の 1 つで、ブートローダーやカーネルなどのブートコンポーネントのデジタル署名を、ハードウェアに保存されている信頼できる鍵と照合して検証します。セキュアブートは、起動時に不正なソフトウェアや改ざんされたソフトウェアが実行されることを防止し、悪意のあるコードからシステムを保護します。定められたインターフェイスを介して特定のデバイスパスへのアクセスを認証し、最新の設定の使用を強制し、以前の設定を永続的に上書きします。セキュアブートを有効にして Red Hat Enterprise Linux (RHEL) カーネルを起動すると、カーネルが lockdown モードに入ります。これにより、信頼できるベンダーによって署名されたカーネルモジュールだけが確実にロードされます。その結果、セキュアブートによってオペレーティングシステムのブートシーケンスのセキュリティーが強化されます。

セキュアブートのコンポーネント

セキュアブートメカニズムは、ファームウェア、署名データベース、暗号鍵、ブートローダー、ハードウェアモジュール、およびオペレーティングシステムで構成されます。以下は、UEFI の信頼済み変数の構成要素です。

  • Key Exchange Key データベース (KEK): RHEL オペレーティングシステムと仮想マシンファームウェア間の信頼を確立するための公開鍵の交換。これらの鍵を使用して、Allowed Signature データベース (db) と Forbidden Signature データベース (dbx) を更新することもできます。
  • Platform Key データベース (PK): 仮想マシンファームウェアとクラウドプラットフォーム間の信頼を確立するための自己署名のシングルキーデータベース。また、PK は KEK データベースを更新します。
  • Allowed Signature データベース (db): バイナリーファイルがシステム上で起動できるかどうかを確認するための証明書またはバイナリーハッシュのリストを保持するデータベース。さらに、db からのすべての証明書は、RHEL カーネルの .platform キーリングにインポートされます。この機能を使用すると、lockdown モードで署名されたサードパーティーのカーネルモジュールを追加およびロードすることができます。
  • Forbidden Signature データベース (dbx): システム上で起動することが禁止されている証明書またはバイナリーハッシュのリストを保持するデータベース。
注記

バイナリーファイルは、dbx データベースと Secure Boot Advanced Targeting (SBAT) メカニズムに照らしてチェックされます。SBAT を使用すると、バイナリーに署名した証明書を有効なままに保ちながら、特定のバイナリーの古いバージョンを無効にできます。

クラウド上の RHEL におけるセキュアブートの段階

RHEL インスタンスが Unified Kernel Image (UKI) モードで起動し、セキュアブートが有効な場合、RHEL インスタンスは次の順序でクラウドサービスインフラストラクチャーとやり取りします。

  1. 初期化: RHEL インスタンスが起動すると、クラウドでホストされているファームウェアが最初に起動し、セキュアブートメカニズムを実装します。
  2. 変数ストアの初期化: ファームウェアは、変数ストアから UEFI 変数を初期化します。このストアは、ブートプロセスと実行時の操作のためにファームウェアが管理する必要がある情報専用のストレージ領域です。RHEL インスタンスが初めて起動すると、ストアは仮想マシンイメージに関連付けられたデフォルト値によって初期化されます。
  3. ブートローダー: ブート時に、ファームウェアは第 1 段階のブートローダーをロードします。x86 UEFI 環境の RHEL インスタンスの場合、第 1 段階のブートローダーは shim です。shim ブートローダーは、ブートプロセスの次の段階を認証して読み込み、UEFI と GRUB 間の橋渡し役として機能します。

    1. RHEL の shim x86 バイナリーは、現在 Microsoft Corporation UEFI CA 2011 Microsoft 証明書によって署名されています。これは、Allowed Signature データベース (db) にデフォルトの Microsoft 証明書が含まれているさまざまなハードウェアおよび仮想化プラットフォーム上で、RHEL インスタンスをセキュアブート対応モードで起動できるようにするためです。
    2. shim バイナリーは、Red Hat Secure Boot CA と、必要に応じて Machine Owner Key (MOK) を使用して、信頼済み証明書のリストを拡張します。
  4. UKI: shim バイナリーは、RHEL UKI (kernel-uki-virt パッケージ) をロードします。対応する証明書 (x86_64 アーキテクチャーでは Red Hat Secure Boot Signing 504) が UKI に署名します。この証明書は redhat-sb-certs パッケージにあります。この証明書は Red Hat Secure Boot CA によって署名されているため、チェックは成功します。
  5. UKI アドオン: UKI cmdline 拡張機能を使用する場合、RHEL カーネルが、拡張機能の署名を dbMOK、および shim に同梱されている証明書と照合して積極的にチェックします。このプロセスにより、その拡張機能が、オペレーティングシステムベンダーである RHEL か、ユーザーのどちらかによって署名されていることが保証されます。

RHEL カーネルがセキュアブートモードで起動すると、カーネルは lockdown モードになります。lockdown に入ると、RHEL カーネルは db の鍵を .platform キーリングに追加し、MOK の鍵を .machine キーリングに追加します。カーネルビルドプロセス中、ビルドシステムは、秘密鍵と公開鍵で構成される一時的な鍵を使用して動作します。ビルドシステムは、kernel-modules-corekernel-moduleskernel-modules-extra などの標準の RHEL カーネルモジュールに署名します。各カーネルビルドが完了すると、この秘密鍵はサードパーティーモジュールの署名には使用できなくなります。この署名のためには、db および MOK の証明書を使用できます。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る