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

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

book

Article ID: 324602

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

免責事項:これは英文の記事「Replacing an expired data-encipherment certificate on vCenter Server (312152)」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

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


Environment

VMware vCenter Server 8.0.x
VMware vCenter Server 7.0.x
VMware vCenter Server Appliance 6.7.x

Resolution

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

シェルスクリプトを使用した置き換え
手動手順を使用した置き換え (アプライアンス)
手動手順を使用した置き換え (Windows)

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

  • KB312152 に添付の 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 を停止し、Windows カスタマイズ キー 更新を実行してから、VPXD を起動します。

    service-control --stop vpxd

    /usr/sbin/vpxd -g

    service-control --start vpxd

    サンプル結果:

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

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

    /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>:
この値は、vCenter Server の FQDN/PNID に置き換えます。

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

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

  • VPXD を停止し、Windows カスタマイズ キー更新を実行してから、VPXD を起動します。

service-control --stop vpxd

/usr/sbin/vpxd -g

service-control --start vpxd

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

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

    "%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>
この値は、vCenter Server の FQDN/PNID に置き換えます。

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

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

  • VPXD を停止し、Windows カスタマイズ キー更新を実行してから、VPXD を起動します。

cd C:\Program Files\VMware\vCenter Server\bin

service-control --stop vpxd

"C:\Program Files\VMware\Infrastructure\VirtualCenter Server\vpxd.exe" -g

service-control --start vpxd

重要な注意事項:

  • データ暗号化証明書は、VMCA ルート証明書によって発行されます。新しいデータ暗号化証明書の有効期限は、ルート証明書の有効期限と同じになります。
  • データ暗号化証明書は、以下のパスで VC のアップグレード/アップデート時に自動的に更新される場合があります。

    6.7x から 70U3i (70P06) 、または 70U3i (70P06) 以降 7.0U3o (70P08) 未満へのアップグレード
    7.0x から 8.0GA、または  8.0GA 以降 8.0U3 未満へのアップグレード

    以下のアップグレード/アップデートパスでは、証明書が期限切れの場合または 1 年以内に期限切れになる場合にのみ証明書が更新され、証明書の更新が不要な場合に余分な時間コストがかからないようにします。

    7.0x から 8.0U3 または 8.0U3 以降へのアップグレード
    7.0x から 7.0U3o (70P08) または 7.0U3o (70P08) 以降へのアップグレード/パッチ
    8.0x から 8.0U2 または 8.0U2 以降へのアップグレード/パッチ