認証局 (CA) によって署名された証明書を作成およびインポートすると、SSL 通信の信頼レベルが最大になり、クラウド内の接続を保護することができます。

VMware Cloud Director サーバは、HTTPS 用とコンソール プロキシ通信用の 2 つの異なる SSL エンドポイントをサポートしている必要があります。

VMware Cloud Director アプライアンスでは、これら 2 台のエンドポイントは同じ IP アドレスまたはホスト名を共有しますが、2 つの個別のポート(HTTPS には 443、コンソール プロキシ通信には 8443)を使用します。ワイルドカード証明書を使用するなど、両方のエンドポイントに同じ証明書を使用できます。

いずれのエンドポイントの証明書にも、X.500 識別名と X.509 サブジェクトの別名拡張機能が含まれている必要があります。

独自のプライベート キー ファイルと CA 署名付き証明書ファイルがすでに存在する場合は、プライベート キーおよび CA 署名付き SSL 証明書の VMware Cloud Director アプライアンスへのインポートに記載されている手順を実行します。

重要: デプロイ時に、 VMware Cloud Director アプライアンスは、2,048 ビットのキー サイズの自己署名証明書を生成します。適切なキー サイズを選択する前に、インストールのセキュリティ要件を評価する必要があります。NIST Special Publication 800-131A に従い、1024 ビット未満のキー サイズはサポートされなくなりました。

この手順で使用されるプライベート キー パスワードは root ユーザー パスワードであり、root_password として表されます。

手順

  1. VMware Cloud Director アプライアンス コンソールに、root として直接ログインするか、SSH クライアントを使用して接続します。
  2. 環境のニーズに応じて、次のいずれかのオプションを選択します。
    VMware Cloud Director アプライアンスをデプロイすると、 VMware Cloud Director は、HTTPS サービスとコンソール プロキシ サービス用に 2,048 ビットのキー サイズで自己署名証明書を自動的に生成します。
    • デプロイ時に生成される証明書に認証局で署名する場合は、手順 5 に進みます。
    • キー サイズを大きくするなどのカスタム オプションを使用して新しい証明書を生成する場合は、手順 3 に進みます。
  3. コマンドを実行して、既存の証明書ファイルをバックアップします。
    cp /opt/vmware/vcloud-director/etc/user.http.pem /opt/vmware/vcloud-director/etc/user.http.pem.original
    cp /opt/vmware/vcloud-director/etc/user.http.key /opt/vmware/vcloud-director/etc/user.http.key.original
    cp /opt/vmware/vcloud-director/etc/user.consoleproxy.pem /opt/vmware/vcloud-director/etc/user.consoleproxy.pem.original
    cp /opt/vmware/vcloud-director/etc/user.consoleproxy.key /opt/vmware/vcloud-director/etc/user.consoleproxy.key.original
  4. 次のコマンドを実行して、HTTPS サービス用とコンソール プロキシ サービス用のパブリックおよびプライベート キー ペアを作成します。
    /opt/vmware/vcloud-director/bin/cell-management-tool generate-certs --cert /opt/vmware/vcloud-director/etc/user.http.pem --key /opt/vmware/vcloud-director/etc/user.http.key --key-password root-password
    /opt/vmware/vcloud-director/bin/cell-management-tool generate-certs --cert /opt/vmware/vcloud-director/etc/user.consoleproxy.pem --key /opt/vmware/vcloud-director/etc/user.consoleproxy.key --key-password root-password

    これらのコマンドにより、デフォルト値を使用した証明書ファイルの作成または上書き、および指定したパスワードを使用したプライベート キー ファイルの作成または上書きが行われます。環境の DNS 構成に応じて、発行者のコモン ネーム (CN) は各サービスの IP アドレスまたは FQDN に設定されます。証明書はキー長にデフォルトの 2048 ビットを使用し、作成後 1 年で期限切れになります。

    重要: VMware Cloud Director アプライアンスの構成上の制限のため、HTTPS 証明書ファイルの場所には /opt/vmware/vcloud-director/etc/user.http.pem および /opt/vmware/vcloud-director/etc/user.http.key を、コンソール プロキシ証明書ファイルの場所には /opt/vmware/vcloud-director/etc/user.consoleproxy.pem および /opt/vmware/vcloud-director/etc/user.consoleproxy.key を使用する必要があります。
    注: アプライアンスの root パスワードをキー パスワードとして使用します。
  5. HTTPS サービス用とコンソール プロキシ サービス用の証明書署名リクエスト (CSR) を作成します。
    重要: VMware Cloud Director アプライアンスは、HTTPS サービスとコンソール プロキシ サービスの両方で同じ IP アドレスおよびホスト名を共有します。そのため、CSR 作成コマンドでは、Subject Alternative Names (SAN) 拡張引数に同じ DNS および IP アドレスを指定する必要があります。
    1. http.csr ファイル内に証明書署名リクエストを作成します。
      openssl req -new -key /opt/vmware/vcloud-director/etc/user.http.key -reqexts SAN -config <(cat /etc/ssl/openssl.cnf <(printf "\n[SAN]\nsubjectAltName=DNS:vcd2.example.com,DNS:vcd2,IP:10.100.101.10\n")) -out http.csr
    2. consoleproxy.csr ファイル内に証明書署名リクエストを作成します。
      openssl req -new -key /opt/vmware/vcloud-director/etc/user.consoleproxy.key -reqexts SAN -config <(cat /etc/ssl/openssl.cnf <(printf "\n[SAN]\nsubjectAltName=DNS:vcd2.example.com,DNS:vcd2,IP:10.100.101.10\n")) -out consoleproxy.csr
  6. 証明書署名リクエストを認証局に送信します。
    証明書発行機関により、Web サーバー タイプを指定するよう求められる場合は、Jakarta Tomcat を使用します。
    CA 署名付き証明書を取得します。
  7. CA 署名付き証明書、CA ルート証明書、およびすべての中間証明書を VMware Cloud Director アプライアンスにコピーし、コマンドを実行して既存の証明書を上書きします。
    1. コマンドを実行して、アプライアンスの既存の user.http.pem 証明書を CA 署名付きバージョンで上書きします。
      cp ca-signed-http.pem /opt/vmware/vcloud-director/etc/user.http.pem
    2. コマンドを実行して、アプライアンスの既存の user.consoleproxy.pem を CA 署名付きバージョンで上書きします。
      cp ca-signed-consoleproxy.pem /opt/vmware/vcloud-director/etc/user.consoleproxy.pem
  8. コマンドを実行して、ルート CA 署名付き証明書と中間証明書を HTTP 証明書およびコンソール プロキシ証明書に追加します。
    cat intermediate-certificate-file-1.cer intermediate-certificate-file-2.cer root-CA-certificate.cer >> /opt/vmware/vcloud-director/etc/user.http.pem
    cat intermediate-certificate-file-1.cer intermediate-certificate-file-2.cer root-CA-certificate.cer >> /opt/vmware/vcloud-director/etc/user.consoleproxy.pem
  9. コマンドを実行して、証明書を VMware Cloud Director インスタンスにインポートします。
    /opt/vmware/vcloud-director/bin/cell-management-tool certificates -j --cert /opt/vmware/vcloud-director/etc/user.http.pem --key /opt/vmware/vcloud-director/etc/user.http.key --key-password root_password
    /opt/vmware/vcloud-director/bin/cell-management-tool certificates -p --cert /opt/vmware/vcloud-director/etc/user.consoleproxy.pem --key /opt/vmware/vcloud-director/etc/user.consoleproxy.key --key-password root_password
  10. 新しい署名付き証明書を有効にするには、VMware Cloud Director アプライアンスで vmware-vcd サービスを再起動します。
    1. コマンドを実行してサービスを停止します。
      /opt/vmware/vcloud-director/bin/cell-management-tool cell -i $(service vmware-vcd pid cell) -s
    2. コマンドを実行してサービスを開始します。
      systemctl start vmware-vcd

次のタスク