マシン SSL 証明書を置き換えたら、ソリューション ユーザー証明書を置き換えることができます。

このタスクについて

多くの VMware のユーザーの多くがソリューション ユーザー証明書を置き換えていません。マシン SSL 証明書だけがカスタム証明書に置き換えられています。このハイブリッド アプローチによって、セキュリティ チームの要求を満たすことができます。

  • 証明書はプロキシの内側に配置されるか、カスタム証明書が使用されます。

  • 中間 CAは使用されません。

各管理ノードおよび各 Platform Services Controller ノードにあるマシン ソリューション ユーザー証明書を置き換えます。各管理ノードにある他のソリューション ユーザー証明書のみを置き換えます。外部 --server がある管理ノードでコマンドを実行する場合は、Platform Services Controller パラメータを使用して Platform Services Controller を指定します。

注:

大規模なデプロイで、ソリューション ユーザー証明書をリストする場合は、dir-cli list の出力にすべてのノードのソリューション ユーザーが含まれます。vmafd-cli get-machine-id --server-name localhost を実行して、各ホストのローカル マシン ID を検索します。各ソリューション ユーザーの名前には、マシン ID が含まれています。

前提条件

各ソリューション ユーザー証明書には異なる Subject が指定されている必要があります。たとえば、ソリューション ユーザー名(例: vpxd)などの一意の識別子を含めることができます。

手順

  1. certool.cfg のコピーを 1 つ作成し、名前、IP アドレス、DNS 名、および E メールのフィールドを削除して、ファイルの名前を sol_usr.cfg のような名前に変更します。

    生成プロセスの一部として、コマンド ラインから証明書に名前を付けることができます。その他の情報は、ソリューション ユーザーには必要ありません。デフォルトの情報を残すと、生成される証明書により混乱が生じる可能性があります。

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

    例:

    certool --genkey --privkey=vpxd.priv --pubkey=vpxd.pub
    certool --gencert --privkey=vpxd.priv --cert vpxd.crt --Name=VPXD_1 --config sol_usr.cfg
  3. 各ソリューション ユーザーの名前を検索します。
    dir-cli service list 
    

    証明書を置き換えるときに返される一意の ID を使用できます。入力と出力は次にようになります。

    C:\Program Files\VMware\vCenter Server\vmafdd>dir-cli service list
    Enter password for administrator@vsphere.local:
    1. machine-1d364500-4b45-11e4-96c2-020011c98db3
    2. vpxd-1d364500-4b45-11e4-96c2-020011c98db3
    3. vpxd-extension-1d364500-4b45-11e4-96c2-020011c98db3
    4. vsphere-webclient-1d364500-4b45-11e4-96c2-020011c98db3

    マルチノード デプロイでソリューション ユーザー証明書の一覧を表示すると、dir-cli リストの出力にすべてのノードのすべてのソリューション ユーザーが示されます。vmafd-cli get-machine-id --server-name localhost を実行して、各ホストのローカル マシン ID を検索します。各ソリューション ユーザーの名前には、マシン ID が含まれています。

  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. vmdir 内の既存の証明書を置き換え、次に VECS 内の証明書を置き換えます。

    ソリューション ユーザーに対して、その順序で証明書を追加する必要があります。例:

    dir-cli service update --name <vpxd-xxxx-xxx-7c7b769cd9f4> --cert ./vpxd.crt
    vecs-cli entry delete --store vpxd --alias vpxd
    vecs-cli entry create --store vpxd --alias vpxd --cert vpxd.crt --key vpxd.priv
    
    注:

    vmdir の証明書が置き換えられていないと、ソリューション ユーザーは vCenter Single Sign-On にログインできません。

  6. すべてのサービスを再開します。
    service-control --start --all
    

ソリューション ユーザー証明書の置き換え(中間 CA)

  1. 各ソリューション ユーザーにパブリック/プライベート キーのペアを生成します。これには、各 Platform Services Controller のマシン ソリューション ユーザーおよび各管理ノードのペアと、各管理ノードの各追加ソリューション ユーザー (vpxd、vpxd-extension、vsphere-webclient) のペアが含まれます。

    1. 組み込みデプロイのマシン ソリューション ユーザーまたは Platform Services Controller のマシン ソリューション ユーザーのキー ペアを生成します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --genkey --privkey=machine-key.priv --pubkey=machine-key.pub
      
    2. (オプション)外部 Platform Services Controller を使用したデプロイの場合、各管理ノードのマシン ソリューション ユーザーにキー ペアを生成します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --genkey --privkey=machine-key.priv --pubkey=machine-key.pub
    3. 各管理ノードの vpxd ソリューション ユーザーにキー ペアを生成します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --genkey --privkey=vpxd-key.priv --pubkey=vpxd-key.pub
    4. 各管理ノードの vpxd-extension ソリューション ユーザーにキー ペアを生成します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --genkey --privkey=vpxd-extension-key.priv --pubkey=vpxd-extension-key.pub
    5. 各管理ノードの vsphere-webclient ソリューション ユーザーにキー ペアを生成します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --genkey --privkey=vsphere-webclient-key.priv --pubkey=vsphere-webclient-key.pub
  2. Platform Services Controller および各管理ノードのマシン ソリューション ユーザーと、各管理ノードの各追加ソリューション ユーザー (vpxd、vpxd-extension、vsphere-webclient) に新しい VMCA ルート証明書によって署名されたソリューション ユーザー証明書を生成します。

    注:

    --Name パラメータは一意である必要があります。ソリューション ユーザー ストアの名前も含めると、ソリューション ユーザーごとにどの証明書を適用するのかが確認しやすくなります。例には、それぞれ vpxd または vpxd-extension のような名前が含まれています。

    1. 以下のコマンドを Platform Services Controller ノードで実行し、そのノードのマシン ソリューション ユーザーにソリューション ユーザー証明書を生成します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-machine.crt --privkey=machine-key.priv --Name=machine 
      
    2. 各管理ノードのマシン ソリューション ユーザーに証明書を生成します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-machine.crt --privkey=machine-key.priv --Name=machine --server=<psc-ip-or-fqdn>
      
    3. 各管理ノードの vpxd ソリューション ユーザーに証明書を生成します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-vpxd.crt --privkey=vpxd-key.priv --Name=vpxd --server=<psc-ip-or-fqdn>
      
    4. 各管理ノードの vpxd-extensions ソリューション ユーザーに証明書を生成します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-vpxd-extension.crt --privkey=vpxd-extension-key.priv --Name=vpxd-extension --server=<psc-ip-or-fqdn>
      
    5. 次のコマンドを実行して、各管理ノードの vsphere-webclient ソリューション ユーザーに証明書を生成します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-vsphere-webclient.crt --privkey=vsphere-webclient-key.priv --Name=vsphere-webclient --server=<psc-ip-or-fqdn>
  3. VECS のソリューション ユーザー証明書を、新しいソリューション ユーザー証明書で置き換えます。

    注:

    --store--alias パラメータは、サービスのデフォルト名と正確に一致させる必要があります。

    1. Platform Services Controller ノードで、以下のコマンドを実行してマシン ソリューション ユーザー証明書を置き換えます。

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store machine --alias machine
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store machine --alias machine --cert new-machine.crt --key machine-key.priv
      
    2. 以下のように、各管理ノードのマシン ソリューション ユーザー証明書を置き換えます。

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store machine --alias machine
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store machine --alias machine --cert new-machine-vc.crt --key machine-vc-key.priv
      
    3. 各管理ノードの vpxd ソリューション ユーザー証明書を置き換えます。

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store vpxd --alias vpxd
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store vpxd --alias vpxd --cert new-vpxd.crt --key vpxd-key.priv
      
    4. 各管理ノードの vpxd-extension ソリューション ユーザー証明書を置き換えます。

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store vpxd-extension --alias vpxd-extension
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store vpxd-extension --alias vpxd-extension --cert new-vpxd-extension.crt --key vpxd-extension-key.priv
      
    5. 各管理ノードの vsphere-webclient ソリューション ユーザー証明書を置き換えます。

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store vsphere-webclient --alias vsphere-webclient
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store vsphere-webclient --alias vsphere-webclient --cert new-vsphere-webclient.crt --key vsphere-webclient-key.priv
      
  4. 新しいソリューション ユーザー証明書を使用して VMware ディレクトリ サービス (vmdir) を更新します。vCenter Single Sign-On 管理者パスワードを求められます。

    1. dir-cli service list を実行し、ソリューション ユーザーごとに一意のサービス ID サフィックスを取得します。このコマンドは、Platform Services Controller または vCenter Server システム上で実行できます。

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"dir-cli>dir-cli service list
      output:
      1. machine-29a45d00-60a7-11e4-96ff-00505689639a
      2. machine-6fd7f140-60a9-11e4-9e28-005056895a69
      3. vpxd-6fd7f140-60a9-11e4-9e28-005056895a69
      4. vpxd-extension-6fd7f140-60a9-11e4-9e28-005056895a69
      5. vsphere-webclient-6fd7f140-60a9-11e4-9e28-005056895a69

      注:

      大規模なデプロイで、ソリューション ユーザー証明書をリストする場合は、dir-cli list の出力にすべてのノードのソリューション ユーザーが含まれます。vmafd-cli get-machine-id --server-name localhost を実行して、各ホストのローカル マシン ID を検索します。各ソリューション ユーザーの名前には、マシン ID が含まれています。

    2. Platform Services Controller の vmdir にあるマシン証明書を置き換えます。たとえば、machine-29a45d00-60a7-11e4-96ff-00505689639a が Platform Services Controller のマシン ソリューション ユーザーの場合、以下のコマンドを実行します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"dir-cli service update --name machine-29a45d00-60a7-11e4-96ff-00505689639a --cert new-machine-1.crt
    3. 各管理ノードの vmdir にあるマシン証明書を置き換えます。たとえば、machine-6fd7f140-60a9-11e4-9e28-005056895a69 が vCenter Server のマシン ソリューション ユーザーの場合、以下のコマンドを実行します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"dir-cli service update --name machine-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-machine-2.crt
    4. 各管理ノードの vmdir にある vpxd ソリューション ユーザー証明書を置き換えます。たとえば、vpxd-6fd7f140-60a9-11e4-9e28-005056895a69 が vpxd ソリューション ユーザー ID の場合、以下のコマンドを実行します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"dir-cli service update --name vpxd-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-vpxd.crt
    5. 各管理ノードの vmdir にある vpxd-extension ソリューション ユーザー証明書を置き換えます。たとえば、vpxd-extension-6fd7f140-60a9-11e4-9e28-005056895a69 が vpxd-extension ソリューション ユーザー ID の場合、以下のコマンドを実行します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"dir-cli service update --name vpxd-extension-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-vpxd-extension.crt
      
    6. 各管理ノードの vsphere-webclient ソリューション ユーザー証明書を置き換えます。たとえば、vsphere-webclient-6fd7f140-60a9-11e4-9e28-005056895a69 が vsphere-webclient ソリューション ユーザー ID の場合、以下のコマンドを実行します。

      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"dir-cli service update --name vsphere-webclient-6fd7f140-60a9-11e4-9e28-005056895a69 --cert new-vsphere-webclient.crt