カスタム証明書による VMware 認証局 (VMCA) 証明書の置き換えの最初の手順は、CSR を生成し、署名のために CSR を送信することです。続いて、署名済みの証明書をルート証明書として VMware 認証局 (VMCA) に追加します。

このタスクについて

Certificate Manager ユーティリティなどのツールを使用して CSR を生成できます。CSR は次の要件を満たす必要があります。

  • キー サイズ: 2,048 ビット以上

  • PEM 形式。VMware では、PKCS8 および PKCS1(RSA キー)がサポートされます。VECS に追加されたキーは、PKCS8 に変換されます。

  • x509 バージョン 3

  • カスタム証明書を使用している場合、ルート証明書の認証局の拡張を true に設定し、証明書の署名を要件の一覧に含める必要があります。

  • CRL の署名は有効にしてください。

  • 拡張キー使用法には、クライアント認証またはサーバ認証を含めないでください。

  • 証明書チェーンの長さに明示的な制限はありません。VMware 認証局 (VMCA) では、デフォルトで OpenSSL が使用されます。この場合、10 個の証明書となります。

  • ワイルドカードまたは複数の DNS 名を使用した証明書はサポートされていません。

  • VMCA の従属認証局は作成できません。

    Microsoft Certificate Authority の使用例については、VMware のナレッジベースの記事 2112009 の「vSphere 6.0 で SSL 証明書を作成するために Microsoft 認証局テンプレートを作成する」を参照してください。

VMCA は、ルート証明書を置き換えるときに、証明書の次の属性を検証します。

  • キーのサイズ:2,048 ビット以上

  • キーの使用:証明書の署名

  • 基本制約:サブジェクト タイプ CA

手順

  1. CSR を生成して、CA に送ります。

    CA の指示に従います。

  2. 署名済みの VMware 認証局 (VMCA) 証明書と、サード パーティ CA またはエンタープライズ CA の完全な CA チェーンを含む証明書ファイルを準備します。rootca1.crt などの名前でファイルを保存します。

    これは、PEM 形式のすべての CA 証明書を単一ファイルにコピーすることで行えます。VMware 認証局 (VMCA) ルート証明書から始まり、最終的にはルート CA PEM 証明書になります。例:

    -----BEGIN CERTIFICATE-----
    <Certificate of VMCA>
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    <Certificate of intermediary CA>
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    <Certificate of Root CA>
    -----END CERTIFICATE-----
  3. すべてのサービスを停止し、証明書の作成、伝達、およびストレージを処理するサービスを開始します。

    サービス名は、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
    
  4. 既存の VMCA ルート CA を置き換えます。
    certool --rootca --cert=rootca1.crt --privkey=root1.key

    このコマンドを実行すると、次の処理が行われます。

    • ファイル システム内の証明書がある場所に、新しいカスタム ルート証明書が追加されます。

    • VECS の TRUSTED_ROOTS ストアに、カスタム ルート証明書が追加されます(一定時間の経過後)。

    • vmdir にカスタム ルート証明書が追加されます(一定時間の経過後)。

  5. (オプション) : vmdir(VMware ディレクトリ サービス)のすべてのインスタンスに変更を伝達するには、新しいルート証明書を vmdir に発行し、各ファイルのフル パスを指定します。

    例:

    dir-cli trustedcert publish --cert rootca1.crt

    vmdir ノード間のレプリケーションは 30 秒おきに実行されます。VECS は vmdir に対する新しいルート証明書ファイルのポーリングを 5 分おきに実行するため、VECS にルート証明書を明示的に追加する必要はありません。

  6. (オプション) : 必要な場合は、VECS の更新を強制できます。
    vecs-cli force-refresh
  7. すべてのサービスを再開します。
    service-control --start --all
    

ルート証明書の置き換え

certool コマンドに --rootca オプションを指定して、VMCA ルート証明書をカスタムの CA ルート証明書に置き換えます。

C:\>"C:\Program Files\VMware\vCenter Server\vmcad\certool" --rootca --cert=C:\custom-certs\root.pem -–privkey=C:\custom-certs\root.key

このコマンドを実行すると、次の処理が行われます。

  • ファイル システム内の証明書がある場所に、新しいカスタム ルート証明書が追加されます。

  • VECS の TRUSTED_ROOTS ストアに、カスタム ルート証明書が追加されます。

  • vmdir にカスタム ルート証明書が追加されます。

次のタスク

元の VMCA ルート証明書は証明書ストアから削除できます(会社のポリシーで求められている場合)。その場合、vCenter Single Sign-On 署名証明書を置き換える必要があります。Security Token Service 証明書の更新を参照してください。