vCenter Server で期限切れのデータ暗号化証明書を置き換える方法
search cancel

vCenter Server で期限切れのデータ暗号化証明書を置き換える方法

book

Article ID: 324602

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

  • この記事には、VMware Certificate Authority (VMCA) によって署名された新しい証明書を使用して、vCenter Server上の「data-encipherment」VECS ストアで証明書を再生成する手順が記載されています。
  • 「data-encipherment」ストアの証明書は、ゲスト OS のカスタマイズのために VPXD サービスによって使用されます。


Environment

VMware vCenter Server 7.0.x

Resolution

以下のいずれかの方法に従って証明書を置き換えてください


データ暗号化証明書を置き換えるスクリプト化されたメソッド。

  • この記事から添付されている fix_encipherment_cert.sh スクリプトをダウンロードし、vCenter Serverの /tmp フォルダにアップロードします。
    • SCP クライアントによってvCenterにアップロードする接続が拒否された場合は、コマンド「chsh -s /bin/bash」を実行して、SSH セッションからシェルを変更して再試行します。
    • vi コマンドを使用してファイルを作成し、スクリプトの内容をコピー して貼り付けることもできます(例:vi /tmp/fix_encipherment_cert.sh)
  • SSH セッションを使用してvCenter Serverに接続します。
  • /tmp ディレクトリに移動します。

cd /tmp

  • chmod +x fix_encipherment_cert.sh を実行して、ファイルを実行可能にします。
  • ./fix_encipherment_cert.sh を実行します
  • VPXD サービスを再起動して変更を有効にします。再起動しないと、ゲスト OS のカスタマイズが失敗することがある

service-control --stop vpxd
service-control --start vpxd

重要な注意事項:

  • vCenter データベースに既存のWindowsカスタマイズ仕様がある場合は、データ暗号化証明書を更新した後に、これらのカスタマイズ仕様の管理者/ドメイン パスワードを編集する必要があります。そうしないと、これらのカスタマイズ仕様を使用してWindows仮想マシンをカスタマイズするときに、更新された証明書で「仕様のパブリック キーがvCenterパブリック キーと一致しません。」というエラーが発生する可能性があります。続行するには、パスワードを再入力する必要があります。"
  • また、新しいWindowsカスタマイズ仕様を作成して、既存のパスワードの問題を回避することもできます。


結果の例:

手動によるデータ暗号化証明書の置き換え方法 (アプライアンス)

  • 古い証明書とプライベート キーのバックアップを作成します。

/usr/lib/vmware-vmafd/bin/vecs-cli entry getcert --store data-encipherment --alias data-encipherment --output /tmp/old-data-encipherment.crt

/usr/lib/vmware-vmafd/bin/vecs-cli entry getkey --store data-encipherment --alias data-encipherment --output /tmp/old-data-encipherment.key

  • VECS ストアから既存の証明書を削除します。

/usr/lib/vmware-vmafd/bin/vecs-cli entry delete -y --store data-encipherment --alias data-encipherment

  • VECS ストアを一覧表示し、リストが空であることを確認します。

/usr/lib/vmware-vmafd/bin/vecs-cli entry list --store data-encipherment

  • 既存のプライベート キーを使用して新しい証明書を生成し、VECS ストアに追加します

注:certool の --genCIScert スイッチは、新しい証明書を証明書ストアに自動的に追加します

/usr/lib/vmware-vmca/bin/certool --server=<PSC_FQDN> --genCIScert --dataencipherment --privkey=/tmp/old-data-encipherment.key --cert=/tmp/tmp-data-encipherment.crt --Name=data-encipherment --FQDN=<VC_FQDN>


注:
<PSC_FQDN>
vCenter Server 6.7 の場合 - vCenterが外部 PSC で実行されている場合は Platform Service Controller の FQDN に置き換えるか、組み込みの PSC の場合は vCenter Server の FQDN を使用します。
vCenter Server 7.0 の場合 - この値を VC FQDN または「localhost」

に置き<VC_FQDN>換えます
この値は、FQDN/PNID vCenter Server に置き換えます。

  • 次のコマンドを使用して、新しい証明書を確認します。

/usr/lib/vmware-vmafd/bin/vecs-cli entry list --store data-encipherment --text | egrep 'Alias|Serial Number:|Subject:|Not Before|Not After'

  • VPXD サービスを再起動して変更を有効にします。再起動しないと、ゲスト OS のカスタマイズが失敗することがある

service-control --stop vpxd
service-control --start vpxd
 

手動によるデータ暗号化証明書の置き換え方法(ウィンドウ)

  • 古い証明書とプライベート キーのバックアップを作成します。

"%VMWARE_CIS_HOME%"\vmafdd\vecs-cli entry getcert --store data-encipherment --alias data-encipherment --output c:\tmp\old-data-encipherment.crt

VMWARE_CIS_HOME%%"\vmafdd\vecs-cli entry getkey --store data-encipherment --alias data-encipherment --output c:\tmp\old-data-encipherment.key

  • VECS ストアから既存の証明書を削除します。

"%VMWARE_CIS_HOME%"\vmafdd\vecs-cli entry delete -y --store data-encipherment --alias data-encipherment

  • VECS ストアを一覧表示し、リストが空であることを確認します。

"%VMWARE_CIS_HOME%"\vmafdd\vecs-cli entry list --store data-encipherment

  • 既存のプライベート キーを使用して新しい証明書を生成し、VECS ストアに追加します

注:certool の --genCIScert スイッチは、新しい証明書を証明書ストアに自動的に追加します

"%VMWARE_CIS_HOME%"\vmcad\certool --server=<PSC_FQDN> --genCIScert --dataencipherment --privkey=c:\\}tmp\old-data-encipherment.key --cert=c:\tmp\tmp-data-encipherment.crt --Name=data-encipherment --FQDN=<VC_FQDN>


注:
<PSC_FQDN>
vCenter Server 6.7 の場合 - vCenterが外部 PSC で実行されている場合は Platform Service Controller の FQDN に置き換えるか、組み込みの PSC の場合は vCenter Server の FQDN を使用します。
vCenter Server 7.0 の場合 - この値を VC FQDN または「localhost」

に置き<VC_FQDN>換えます
この値は、FQDN/PNID vCenter Server に置き換えます。

  • 次のコマンドを使用して、新しい証明書を確認します。

"%VMWARE_CIS_HOME%"\vmafdd\vecs-cli entry list --store data-encipherment --text | egrep 'Alias|Serial Number:|Subject:|Not Before|Not After'

  • VPXD サービスを再起動して変更を有効にします。再起動しないと、ゲスト OS のカスタマイズが失敗することがある

cd C:\Program Files\VMware\vCenter Server\bin
service-control --stop vpxd
service-control --start vpxd


重要な注意事項:

  • vCenter データベースに既存のWindowsカスタマイズ仕様がある場合は、データ暗号化証明書を更新した後に、これらのカスタマイズ仕様の管理者/ドメイン パスワードを編集する必要があります。そうしないと、これらのカスタマイズ仕様を使用してWindows仮想マシンをカスタマイズするときに、更新された証明書で「仕様のパブリック キーがvCenterパブリック キーと一致しません。」というエラーが発生する可能性があります。続行するには、パスワードを再入力する必要があります。"
  • また、新しいWindowsカスタマイズ仕様を作成して、既存のパスワードの問題を回避することもできます。