セキュア ブートは、UEFI ファームウェア標準の一部です。セキュア ブートが使用中の場合、オペレーティング システムのブートローダーが暗号で署名されていない限り、マシンに UEFI ドライバまたはアプリケーションはロードされません。vSphere 6.5 以降、ESXi は、ハードウェアでセキュア ブートが有効な場合にこれをサポートします。
ESXi での UEFI セキュア ブートの使用方法
ESXi バージョン 6.5 以降では、ブート スタックの各レベルで UEFI セキュア ブートをサポートしています。
注: アップグレードされたホストで UEFI セキュア ブートを使用する前に、
ESXi のアップグレード後のセキュア ブート検証スクリプトの実行 の手順に従って互換性を確認してください。
セキュア ブートが使用中の場合、ブート シーケンスは次のようになります。
- vSphere 6.5 以降では、ESXi ブートローダーに VMware パブリック キーが含まれています。ブートローダーは、このキーを使用して、カーネルの署名と、セキュア ブート VIB 検証機能を含むシステムの小さなサブセットを検証します。
- VIB 検証機能は、システムにインストールされているすべての VIB パッケージを検証します。
この時点で、UEFI ファームウェアの一部である証明書の信頼のルートを使用して、システム全体が起動されます。
注:
vSphere 7.0 Update 2 以降をインストールまたはアップグレードするときに、
ESXi ホストに TPM がある場合、TPM は UEFI セキュア ブートの PCR 値に基づいて TPM ポリシーを使用して機密情報をシーリングします。この値は、ポリシーが true として満たされている場合、その後の再起動時にロードされます。vSphere 7.0 Update 2 以降で UEFI セキュア ブートを無効または有効にするには、
セキュアな ESXi 構成のセキュア ブートの適用の有効化または無効化 を参照してください。
UEFI セキュア ブートのトラブルシューティング
セキュア ブートがブート シーケンスのいずれかのレベルで成功しない場合、エラーとなります。
エラー メッセージは、ハードウェア ベンダーによって、および検証が成功しなかったレベルによって異なります。
- 署名のないブートローダーまたは改ざんされているブートローダーでブートすると、ブート シーケンスでエラーとなります。表示されるメッセージは、ハードウェア ベンダーによって異なります。次のようなエラーが表示される場合もあれば、別のエラーが表示される場合もあります。
UEFI0073: Unable to boot PXE Device...because of the Secure Boot policy
- カーネルが改ざんされている場合、次のようなエラーが表示されます。
Fatal error: 39 (Secure Boot Failed)
- パッケージ(VIB またはドライバ)が改ざんされている場合、パープル スクリーンに次のメッセージが表示されます。
UEFI Secure Boot failed: Failed to verify signatures of the following vibs (XX)
セキュア ブートの問題を解決するには、次の手順に従います。
- セキュア ブートを無効にしてホストを再起動します。
- セキュア ブート検証スクリプトを実行します(ESXi のアップグレード後のセキュア ブート検証スクリプトの実行を参照してください)。
- /var/log/esxupdate.log ファイル内の情報を確認します。
ESXi のアップグレード後のセキュア ブート検証スクリプトの実行
UEFI セキュア ブートをサポートしていないバージョンから ESXi ホストをアップグレードした後、セキュア ブートを有効にできるかどうかを確認する必要があります。
セキュア ブートを正常に行うためには、インストールされているすべての VIB の署名がシステムで使用できる必要があります。ESXi の以前のバージョンは、VIB のインストール時に署名を保存できません。
- esxcli コマンドを使用してアップグレードすると、古いバージョンの ESXi は新しい VIB のインストールを実行するため、署名が保存されず、セキュア ブートは実行できません。
- ISO を使用してアップグレードすると、新しい VIB は署名を保存できます。これは、ISO を使用した vSphere Lifecycle Manager のアップグレードにもあてはまります。
- 以前の VIB がシステムに残っている場合、それらの VIB の署名は使用できず、セキュア ブートは実行できません。
- システムがサードパーティ製ドライバを使用しており、VMware のアップグレードにドライバ VIB の新しいバージョンが含まれていない場合、アップグレード後に以前のバージョンの VIB がシステムに残ります。
- まれに、VMware は特定の VIB の開発を継続せず、古い VIB を置き換える新しい VIB を提供しない場合があります。その際は、アップグレード後に古い VIB がシステムに残ることがあります。
注: UEFI セキュア ブートには、最新のブートローダーも必要です。このスクリプトは、最新のブートローダーをチェックしません。
前提条件
- ハードウェアで UEFI セキュア ブートがサポートされることを確認します。
- すべての VIB が、最低でも許容レベル PartnerSupported で署名されていることを確認します。CommunitySupported レベルの VIB を含めると、セキュア ブートを使用できません。