VMCA 署名付きルート証明書を新しく生成したら、環境内のすべてのマシン SSL 証明書を置き換えることができます。

このタスクについて

各マシンには、他のサービスとの安全な通信を実現するため、マシン SSL 証明書が必要です。マルチノード環境では、各ノードでマシン SSL 証明書生成コマンドを実行する必要があります。外部の Platform Services Controller を使用する vCenter ServerPlatform Services Controller を参照するには、--server パラメータを使用します。

前提条件

すべてのサービスを停止し、証明書の伝達およびストレージを処理するサービスを開始する準備ができている。

手順

  1. 新しい証明書を必要とするマシンごとに、certool.cfg のコピーを 1 つ作成します。

    certool.cfg は次の場所で見つけることができます。

    OS

    パス

    Windows

    C:\Program Files\VMware\vCenter Server\vmcad

    Linux

    /usr/lib/vmware-vmca/share/config/

  2. マシンの完全修飾ドメイン名 (FQDN) を含めるように、各マシンのカスタム構成ファイルを編集します。

    マシンの IP アドレスに対して NSLookup を実行して、名前の DNS リストを表示し、ファイルのホスト名フィールドでその名前を使用します。

  3. 各ファイルに、パブリック キーとプライベート キーのファイル ペアと証明書を生成し、カスタマイズした構成ファイルに渡します。

    例:

    certool --genkey --privkey=machine1.priv --pubkey=machine1.pub
    certool --gencert --privkey=machine1.priv --cert machine1.crt --Name=Machine1_Cert --config machine1.cfg
  4. すべてのサービスを停止し、証明書の作成、伝達、およびストレージを処理するサービスを開始します。

    サービス名は、Windows 上と vCenter Server Appliance 上で異なります。

    Windows

    service-control --stop --all
    service-control --start VMWareAfdService
    service-control --start VMWareDirectoryService
    service-control --start VMWareCertificateService
    

    vCenter Server Appliance

    service-control --stop --all
    service-control --start vmafdd
    service-control --start vmdird
    service-control --start vmcad
    
  5. 新しい証明書を VECS に追加します。

    SSL を介して通信するには、すべてのマシンのローカル証明書ストアに、新しい証明書が必要です。最初に既存のエントリを削除し、次に新しいエントリを追加します。

    vecs-cli entry delete --store MACHINE_SSL_CERT --alias __MACHINE_CERT  
    vecs-cli entry create --store MACHINE_SSL_CERT --alias __MACHINE_CERT --cert machine1.cert
    --key machine1.priv
  6. すべてのサービスを再開します。
    service-control --start --all
    

VMCA 署名付き証明書によるマシン証明書の置き換え

  1. SSL 証明書用の構成ファイルを作成し、そのファイルを現在のディレクトリに ssl-config.cfg として保存します。

    Country = US
    Name = vmca-<PSC-FQDN-example>
    Organization = <my_company>
    OrgUnit = <my_company Engineering>
    State = <my_state> 
    Locality = <mytown>
    Hostname = <FQDN>
  2. マシン SSL 証明書にキー ペアを生成します。このコマンドを各管理ノードと Platform Services Controller ノードで実行します。--server オプションは必要ありません。

    C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --genkey --privkey=ssl-key.priv --pubkey=ssl-key.pub
    

    現在のディレクトリに ssl-key.priv および ssl-key.pub ファイルが作成されます。

  3. 新しいマシン SSL 証明書を生成します。この証明書は VMCA によって署名されます。VMCA ルート証明書をカスタム証明書で置き換える場合には、VMCA はすべての証明書に完全な証明書チェーンで署名します。

    • Platform Services Controller ノードまたは組み込みインストールで、次のように実行します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-vmca-ssl.crt --privkey=ssl-key.priv --config=ssl-config.cfg
    • vCenter Server(外部インストール)の場合:

      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-vmca-ssl.crt --privkey=ssl-key.priv --config=ssl-config.cfg --server=<psc-ip-or-fqdn>

    現在のディレクトリに new-vmca-ssl.crt ファイルが作成されます。

  4. (オプション)VECS のコンテンツをリスト表示します。

    "C:\Program Files\VMware\vCenter Server\vmafdd\" vecs-cli store list
    • Platform Services Controller のサンプル出力:

      MACHINE_SSL_CERT
      TRUSTED_ROOTS
      TRUSTED_ROOT_CRLS
      machine
    • vCenter Server のサンプル出力:

      output (on vCenter):
      MACHINE_SSL_CERT
      TRUSTED_ROOTS
      TRUSTED_ROOT_CRLS
      machine
      vpxd
      vpxd-extension
      vsphere-webclient
      sms
  5. VECS 内のマシン SSL 証明書を新しいマシン SSL 証明書で置き換えます。--store--alias の値はデフォルト名と正確に一致させる必要があります。

    • Platform Services Controller で、次のコマンドを実行して MACHINE_SSL_CERT ストア内のマシン SSL 証明書を更新します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store MACHINE_SSL_CERT --alias __MACHINE_CERT
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store MACHINE_SSL_CERT --alias __MACHINE_CERT --cert new-vmca-ssl.crt --key ssl-key.priv
      
    • 各管理ノードまたは組み込みデプロイで、次のコマンドを実行して MACHINE_SSL_CERT ストア内のマシン SSL 証明書を更新します。FQDN はマシンごとに異なるため、各マシンの証明書は別々に更新する必要があります。

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store MACHINE_SSL_CERT --alias __MACHINE_CERT
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store MACHINE_SSL_CERT --alias __MACHINE_CERT --cert new-vmca-ssl.crt --key ssl-key.priv
      

次のタスク

使用している ESXi ホストの証明書を置き換えることもできます。『vSphere セキュリティ』ドキュメントを参照してください。

マルチノード デプロイでルート証明書を置き換えた後は、外部の Platform Services Controller ノードを使用するすべての vCenter Server 上でサービスを再起動する必要があります。