スマート カード認証を有効にするには、vCenter Server システムでリバース プロキシを設定する必要があります。

リバース プロキシの設定は、vSphere 6.5 以降で必要です。

前提条件

CA 証明書を vCenter Server システムにコピーします。

注: vCenter Server 7.0 は、HTTP/2 プロトコルをサポートしています。すべての最新のブラウザおよびアプリケーション( vSphere Client など)は、HTTP/2 を使用して vCenter Server に接続します。ただし、スマート カード認証では、HTTP/1.1 プロトコルを使用する必要があります。スマート カード認証を有効にすると、HTTP/2 の Application-Layer Protocol Negotiation (ALPN、 https://tools.ietf.org/html/rfc7301) が無効になるため、実質的にブラウザで HTTP/2 が使用されることはありません。ALPN に依存せず、HTTP/2 のみを使用するアプリケーションは引き続き動作します。

手順

  1. root ユーザーとして vCenter Server シェルにログインします。
  2. 信頼できるクライアント認証局 (CA) ストアを作成します。
    このストアには、クライアント証明書用の信頼できる発行元の認証局の証明書が含まれます。ここでは、クライアントとは、スマート カード プロセスでエンド ユーザーに情報の入力を求めるメッセージが表示されるブラウザを指します。

    次の例は、vCenter Server で証明書ストアを作成する方法を示しています。

    単一の証明書の場合:
    cd /usr/lib/vmware-sso/
    openssl x509 -inform PEM -in xyzCompanySmartCardSigningCA.cer > /usr/lib/vmware-sso/vmware-sts/conf/clienttrustCA.pem

    複数の証明書の場合:

    cd /usr/lib/vmware-sso/
    openssl x509 -inform PEM -in xyzCompanySmartCardSigningCA.cer >> /usr/lib/vmware-sso/vmware-sts/conf/clienttrustCA.pem
  3. リバース プロキシ定義を含む /etc/vmware-rhttpproxy/config.xml ファイルのバックアップを作成して、エディタで config.xml を開きます。
  4. 次の変更を加えて、ファイルを保存します。
    <http>
    <maxConnections> 2048 </maxConnections>
    <requestClientCertificate>true</requestClientCertificate>
    <clientCertificateMaxSize>4096</clientCertificateMaxSize>
    <clientCAListFile>/usr/lib/vmware-sso/vmware-sts/conf/clienttrustCA.pem</clientCAListFile>
    </http>
    config.xml ファイルには、これらの要素が含まれます。必要に応じて、コメントを解除する、更新する、または構成要素を追加します。
  5. サービスを再起動してください。
    /usr/lib/vmware-vmon/vmon-cli --restart rhttpproxy