ESXCLI コマンドを使用して、セキュアな ESXi 構成リカバリ キーの一覧表示、リカバリ キーのローテーション、および TPM ポリシーの変更(UEFI セキュア ブートの適用など)を実行できます。

セキュアな ESXi 構成リカバリ キーの内容の一覧表示

ESXCLI を使用して、セキュアな ESXi 構成リカバリ キーの内容を表示できます。

このタスクは、TPM がある ESXi ホストにのみ適用されます。通常、バックアップを作成する際、またはリカバリ キーのローテーションの一環として、セキュアな ESXi 構成リカバリ キーの内容を一覧表示します。

前提条件

  • ESXCLI コマンド セットにアクセス可能であること。ESXCLI コマンドはリモートで実行することも、ESXi シェルで実行することもできます。
  • ESXCLI スタンドアローン バージョンまたは PowerCLI を使用するために必要な権限:ホスト.構成.設定

手順

  1. ESXi ホストで次のコマンドを実行します。
    esxcli system settings encryption recovery list
  2. セキュアな構成をリカバリする必要がある場合に備えて、出力をバックアップとして安全なリモートの場所に保存します。

結果

リカバリ キー ID とキーが表示されます。

例: セキュアな ESXi 構成のリカバリ キーの一覧表示

[root@host1] esxcli system settings encryption recovery list

Recovery ID                             Key
--------------------------------------  ---
{2DDD5424-7F3F-406A-8DA8-D62630F6C8BC}  478269-039194-473926-430939-686855-231401-642208-184477-602511
-225586-551660-586542-338394-092578-687140-267425

セキュア な ESXi 構成のリカバリ キーのローテーション

ESXCLI を使用すると、セキュアな ESXi 構成のリカバリ キーをローテーションできます。

このタスクは、TPM がある ESXi ホストにのみ適用されます。セキュリティのベスト プラクティスの一環としてセキュアな ESXi 構成のリカバリ キーをローテーションできます。

前提条件

  • ESXCLI コマンド セットにアクセス可能であること。ESXCLI コマンドはリモートで実行することも、ESXi シェルで実行することもできます。
  • ESXCLI スタンドアローン バージョンまたは PowerCLI を使用するために必要な権限:ホスト.構成.設定

手順

  1. リカバリ キーを一覧表示します。
  2. 次のコマンドを実行します。
    esxcli system settings encryption recovery rotate [-k keyID] -u uuid

    このコマンドでは、オプションの keyID は VMkernel キー キャッシュのキー ID、uuid はリカバリ ID(esxcli system settings encryption recovery list コマンドから取得)です。オプションのキー ID を指定しない場合、ESXi では古いリカバリ キーがランダムに生成される新しいリカバリ キーと置き換えられます。

結果

指定されている場合、リカバリ キーがキー ID によって参照されるキーの内容に設定されます。それ以外の場合、ESXi で新しいキー ID が指定されます。

セキュア な ESXi 構成のトラブルシューティングとリカバリ

セキュアな ESXi 構成で発生する可能性のあるブート問題をトラブルシューティングしてリカバリできます。

TPM をクリアした場合(TPM のシード値がリセットされる)、または TPM に障害が発生した場合は、セキュアな ESXi 構成をリストアするための手順を実行する必要があります。構成をリストアるには、リカバリ キーが必要です。ESXi 構成をリカバリするまで、ホストは起動できません。セキュアな ESXi 構成のリカバリを参照してください。

まれですが、ESXi ホストがセキュアな構成のリストアまたは復号化に失敗し、ホストが起動できなくなる可能性があります考えられる状況は次のとおりです。

  • セキュア ブート設定(または他のポリシー)が変更された
  • 改ざんが実際に行われた
  • リカバリ キーが使用できない

これらの状態に対するトラブルシューティングを行うには、VMware ナレッジベースの記事 (https://kb.vmware.com/kb/81446) を参照してください。

セキュアな ESXi 構成のリカバリ

TPM に障害が発生した場合、または TPM をクリアする場合は、セキュアな ESXi 構成をリカバリする必要があります。ESXi 構成をリカバリするまで、ホストは起動できません。

セキュアな ESXi 構成をリカバリするこは、次の状況のことを指します。
  • TPM をクリアした(TPM のシードがリセットされた)。
  • TPM が失敗した。

他のセキュアな ESXi 構成の問題に対するトラブルシューティングについては、VMware ナレッジベースの記事 (https://kb.vmware.com/kb/81446) を参照してください。

リカバリを手動で実行します。インストールまたはアップグレード スクリプトの一部としてリカバリを実行しないでください。

前提条件

リカバリ キーを取得します。以前にリカバリ キーを一覧表示して保存している必要があります。 セキュアな ESXi 構成リカバリ キーの内容の一覧表示を参照してください。

手順

  1. (オプション) TPM に障害が発生した場合は、(ブート バンクで)ディスクを TPM がある別のホストに移動します。
  2. ESXi ホストを起動します。
  3. ESXi インストーラのウィンドウが表示されたら、Shift + O を押して起動オプションを編集します。
  4. コマンド プロンプトで起動オプションを入力し、構成をリカバリします。
    encryptionRecoveryKey=recovery_key
    セキュアな ESXi 構成がリカバリされ、 ESXi ホストが起動します。
  5. 変更を保持するには、次のコマンドを実行します。
    /sbin/auto-backup.sh

次のタスク

リカバリ キーを入力すると、信頼できない環境に一時的に表示され、メモリに保存されます。必要ではありませんが、ベスト プラクティスとして、ホストを再起動すると、メモリ内のキーの残ったトレースを削除できます。または、キーをローテートさせることもできます。セキュア な ESXi 構成のリカバリ キーのローテーションを参照してください。

セキュアな ESXi 構成のセキュア ブートの適用の有効化または無効化

UEFI セキュア ブートの適用を有効にするか、以前に有効にした UEFI セキュア ブートの適用を無効にするかを選択できます。ESXi ホストの TPM の設定を変更するには、ESXCLI を使用する必要があります。

このタスクは、TPM を備えた ESXi ホストにのみ適用されます。UEFI セキュア ブートは、ファームウェアによって起動されたソフトウェアが信頼できることを保証するためのファームウェア設定です。UEFI セキュア ブートの有効化は、TPM を使用してすべてのブートで実行できます。

前提条件

  • ESXCLI コマンド セットにアクセス可能であること。ESXCLI コマンドはリモートで実行することも、ESXi シェルで実行することもできます。
  • ESXCLI スタンドアローン バージョンまたは PowerCLI を使用するために必要な権限:ホスト.構成.設定

手順

  1. ESXi ホストの現在の設定を一覧表示します。
    esxcli system settings encryption get
       Mode: TPM
       Require Executables Only From Installed VIBs: false
       Require Secure Boot: true
    セキュア ブートの適用が有効になっている場合、[セキュア ブートが必要] には「true」と表示されます。セキュア ブートの適用が無効になっている場合、[セキュア ブートが必要] には「false」と表示されます。
    モード が「NONE」と表示される場合は、ホストのファームウェアで TPM を有効にし、次のコマンドを実行してモードを設定する必要があります。
    esxcli system settings encryption set --mode=TPM
  2. セキュア ブートの適用を有効または無効にします。
    オプション 説明
    有効化
    1. ホストを正常にシャットダウンします。

      たとえば、vSphere ClientESXi ホストを右クリックし、[電源] > [シャットダウン] を選択します。

    2. ホストのファームウェアでセキュア ブートを有効にします。

      特定のベンダーのハードウェア ドキュメントを参照してください。

    3. ホストを再起動します。
    4. 次の ESXCLI コマンドを実行します。
      esxcli system settings encryption set --require-secure-boot=T
    5. 変更を確認します。
      esxcli system settings encryption get
         Mode: TPM
         Require Executables Only From Installed VIBs: false
         Require Secure Boot: true

      [セキュア ブートが必要] に「true」と表示されていることを確認します。

    6. 設定を保存するには、次のコマンドを実行します。
      /sbin/auto-backup.sh
    無効化
    1. 次の ESXCLI コマンドを実行します。
      esxcli system settings encryption set --require-secure-boot=F
    2. 変更を確認します。
      esxcli system settings encryption get
         Mode: TPM
         Require Executables Only From Installed VIBs: false
         Require Secure Boot: false

      [セキュア ブートが必要] に「false」と表示されていることを確認します。

    3. 設定を保存するには、次のコマンドを実行します。
      /sbin/auto-backup.sh

      ホストのファームウェアでセキュア ブートを無効にすることを選択できますが、この時点で、ファームウェア設定と TPM 適用の間の依存関係は設定されなくなります。

結果

ESXi ホストは、選択に応じて、セキュア ブートの適用を有効または無効にして実行されます。
注:
vSphere 7.0 Update 2 以降をインストールまたは vSphere 7.0 Update 2 以降にアップグレードするときに TPM を有効にしない場合は、後で次のコマンドを使用して有効にできます。
esxcli system settings encryption set --mode=TPM
TPM を有効化すると、設定を取り消すことはできません。

TPM がホストで有効な場合でも、一部の TPM では esxcli system settings encryption set コマンドが失敗します。

  • vSphere 7.0 Update 2 の場合:NationZ (NTZ)、Infineon Technologies (IFX)、および Nuvoton Technologies Corporation (NTC) の特定の新しいモデル(NPCT75x など)からの TPM
  • vSphere 7.0 Update 3 の場合:NationZ (NTZ) からの TPM

vSphere 7.0 Update 2 以降の最初の起動中に TPM を使用できない場合、このインストールまたはアップグレードは続行され、モードはデフォルトで「なし」(--mode=NONE) になります。その結果、TPM がアクティブ化されていない場合と同様に動作します。

セキュアな ESXi 構成の execInstalledOnly の適用の有効化/無効化

execInstalledOnly の適用を有効にするか、以前に有効にした execInstalledOnly の適用を無効にするかを選択できます。ESXi ホストの TPM の設定を変更するには、ESXCLI を使用する必要があります。execInstalledOnly の適用を有効にする前に、UEFI セキュア ブートの適用を有効にする必要があります。

このタスクは、TPM を備えた ESXi ホストにのみ適用されます。execInstalledOnly の高度な ESXi ブート オプションを TRUE に設定すると、VMkernel が VIB の一部としてパッケージ化および署名されたバイナリのみを実行することが保証されます。このブート オプションの有効化は、TPM を使用してすべてのブートで実行できます。

前提条件

  • execInstalledOnly の適用を有効にするには、最初に UEFI セキュア ブートの適用を有効にする必要があります。execInstalledOnly の適用は、UEFI セキュア ブートの適用の上に構築されます。セキュアな ESXi 構成のセキュア ブートの適用の有効化または無効化を参照してください。
  • ESXCLI コマンド セットにアクセス可能であること。ESXCLI コマンドはリモートで実行することも、ESXi シェルで実行することもできます。
  • ESXCLI スタンドアローン バージョンまたは PowerCLI を使用するために必要な権限:ホスト.構成.設定

手順

  1. ESXi ホストの現在の設定を一覧表示します。
    esxcli system settings encryption get
       Mode: TPM
       Require Executables Only From Installed VIBs: false
       Require Secure Boot: true
    execInstalledOnly の適用が有効になっている場合、[インストールされた VIB からのみ実行可能ファイルを要求する] に「true」と表示されます。execInstalledOnly の適用が無効になっている場合、[インストールされた VIB からのみ実行可能ファイルを要求する] に「false」と表示されます。execInstalledOnly の適用を有効にするには、セキュア ブートの適用を有効にする必要があります。この場合、[セキュア ブートが必要] には「true」と表示されます。
    モード が「NONE」と表示される場合は、ホストのファームウェアで TPM を有効にし、次のコマンドを実行してモードを設定する必要があります。
    esxcli system settings encryption set --mode=TPM
    また、[セキュア ブートが必要] に「False」と表示されている場合は、 セキュアな ESXi 構成のセキュア ブートの適用の有効化または無効化を参照して適用を有効にします。
  2. execInstalledOnly の適用を有効または無効にします。
    オプション 説明
    有効化
    1. セキュア ブート オプションが有効になっていることを確認します。
      esxcli system settings encryption get
         Mode: TPM
         Require Executables Only From Installed VIBs: false
         Require Secure Boot: true

      [セキュア ブートが必要] に「true」と表示されていることを確認します。表示されていない場合は、セキュアな ESXi 構成のセキュア ブートの適用の有効化または無効化を参照してください。

    2. execInstalledOnly ブート オプションの実行時の値を TRUE に構成するには、次の ESXCLI コマンドを実行します。
      esxcli system settings kernel set -s execInstalledOnly -v TRUE
    3. ホストを正常にシャットダウンします。

      たとえば、vSphere ClientESXi ホストを右クリックし、[電源] > [シャットダウン] を選択します。

    4. ホストを再起動します。
    5. execInstalledOnly の適用を設定するには、次の ESXCLI コマンドを実行します。
      esxcli system settings encryption set --require-exec-installed-only=T 
    6. 変更を確認します。
      esxcli system settings encryption get
         Mode: TPM
         Require Executables Only From Installed VIBs: true
         Require Secure Boot: true

      [インストールされた VIB からのみ実行可能ファイルを要求する] に「true」と表示されていることを確認します。

    7. 設定を保存するには、次のコマンドを実行します。
      /sbin/auto-backup.sh
    無効化
    1. 次の ESXCLI コマンドを実行します。
      esxcli system settings encryption set --require-exec-installed-only=F
    2. 変更を確認します。
      esxcli system settings encryption get
         Mode: TPM
         Require Executables Only From Installed VIBs: false
         Require Secure Boot: true

      [インストールされた VIB からのみ実行可能ファイルを要求する] に「false」と表示されていることを確認します。

    3. 設定を保存するには、次のコマンドを実行します。
      /sbin/auto-backup.sh

      TPM は、execInstalledOnly ブート オプションを適用しなくなりました。

結果

ESXi ホストは、選択に応じて、execInstalledOnly の適用を有効または無効にして実行されます。