セキュリティを強化するために、Horizon Cloud Connector 仮想アプライアンスのカスタム CA 署名付き証明書を構成できます。

前提条件

  • 完全な証明書チェーンが PEM 形式で使用できることを確認します。
  • PEM ファイルがパスフレーズではなくプライベート キーを使用して生成されていることを確認します。
  • 発行された証明書に FQDN と Subject Alt Name が含まれていることを確認します。

手順

  1. デプロイされた Horizon Cloud Connector 仮想アプライアンスへの SSH セッションを開きます。
  2. ディレクトリ /root/server.crt に CA 署名付き証明書をコピーします。
  3. ディレクトリ /root/server.key に CA 署名キーをコピーします。
  4. 既存の証明書をバックアップします。
    • Horizon Cloud Connector バージョン 1.4 以降)次のコマンドを使用します。
      cp /opt/container-data/certs/hze-nginx/server.crt /opt/container-data/certs/hze-nginx/server.crt.orig
    • Horizon Cloud Connector バージョン 1.3 以前)次のコマンドを使用します。
      cp /etc/nginx/ssl/server.crt /etc/nginx/ssl/server.crt.orig
  5. 既存のキーをバックアップします。
    • Horizon Cloud Connector バージョン 1.4 以降)次のコマンドを使用します。
      cp /opt/container-data/certs/hze-nginx/server.key /opt/container-data/certs/hze-nginx/server.key.orig
    • Horizon Cloud Connector バージョン 1.3 以前)次のコマンドを使用します。
      cp /etc/nginx/ssl/server.key /etc/nginx/ssl/server.key.orig
  6. 既存の nginx conf ファイルをコピーします。
    • Horizon Cloud Connector バージョン 1.4 以降)次のコマンドを使用します。
      cp /opt/container-data/conf/hze-nginx/nginx.conf /opt/container-data/conf/hze-nginx/nginx.conf.orig
    • Horizon Cloud Connector バージョン 1.3 以前)次のコマンドを使用します。
      cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.orig
  7. お使いの仮想アプライアンスのバージョンに適したディレクトリに CA 証明書をコピーします。
    • Horizon Cloud Connector バージョン 1.4 以降)次のコマンドを使用します。
      cp /root/server.crt /opt/container-data/certs/hze-nginx/server.crt
    • Horizon Cloud Connector バージョン 1.3 以前)次のコマンドを使用します。
      cp /root/server.crt /etc/nginx/ssl/server.crt
  8. お使いの仮想アプライアンスのバージョンに適したディレクトリに CA 証明書のキー ファイルをコピーします。
    • Horizon Cloud Connector バージョン 1.4 以降)次のコマンドを使用します。
      cp /root/server.key /opt/container-data/certs/hze-nginx/server.key
    • Horizon Cloud Connector バージョン 1.3 以前)次のコマンドを使用します。
      cp /root/server.key /etc/nginx/ssl/server.key
  9. 証明書とキー ファイルの所有者と権限を確認します。
    • Horizon Cloud Connector バージョン 1.4 以降)次のコマンドを使用します。
      chown -R hze-nginx:hze-nginx /opt/container-data/certs/hze-nginx 
      chmod 644 /opt/container-data/certs/hze-nginx/server.crt 
      chmod 600 /opt/container-data/certs/hze-nginx/server.key
    • Horizon Cloud Connector バージョン 1.3 以前)次のコマンドを使用します。
      chown -R root:root /etc/nginx/ssl
      chmod -R 600 /etc/nginx/ssl
  10. 証明書内の発行された FQDN が、nginx の構成ファイルにあるサーバ リスン 443 ブロックのサーバ名ディレクティブと一致することを確認します。
    • Horizon Cloud Connector バージョン 1.4 以降)nginx の構成ファイルは /opt/container-data/conf/hze-nginx/nginx.conf にあります。
    • Horizon Cloud Connector バージョン 1.3 以前)nginx の構成ファイルは /etc/nginx/nginx.conf にあります。
  11. nginx を確認して再起動します。
    • Horizon Cloud Connector バージョン 2.0 以降)次のコマンドを使用します。
      kubectl rollout restart daemonset hze-nginx -n hze-system
    • Horizon Cloud Connector バージョン 1.4 ~ 1.10)次のコマンドを使用します。
      docker exec -i hze-nginx sudo nginx -t 
      systemctl restart hze-nginx
    • Horizon Cloud Connector バージョン 1.3 以前)次のコマンドを使用します。
      nginx -t
      systemctl restart nginx
  12. [ようこそ] 画面で SSL サムプリントを更新します。
    • Horizon Cloud Connector バージョン 2.0 以降)次のコマンドを使用します。
      /opt/vmware/bin/configure-welcome-screen.py
      /usr/bin/killall --quiet vami_login
    • Horizon Cloud Connector バージョン 1.4 ~ 1.10)次のコマンドを使用します。
      docker exec -i hze-core sudo /opt/vmware/bin/configure-welcome-screen.py 
      /usr/bin/killall --quiet vami_login
  13. 新しい証明書をテストするには、Web ブラウザで Horizon Cloud Connector ユーザー インターフェイスの URL を再ロードします。
  14. (オプション) 証明書が正常に動作する場合は、バックアップ ファイルを削除します。
    • Horizon Cloud Connector バージョン 1.4 以降)次のコマンドを使用します。
      rm /opt/container-data/certs/hze-nginx/server.crt.orig 
      rm /opt/container-data/certs/hze-nginx/server.key.orig 
      rm /opt/container-data/conf/hze-nginx/nginx.conf.orig
    • Horizon Cloud Connector バージョン 1.3 以前)次のコマンドを使用します。
      rm /etc/nginx/ssl/server.crt.orig
      rm /etc/nginx/ssl/server.key.orig
      rm /etc/nginx/nginx.conf.orig
  15. ルート ディレクトリにコピーした CA 証明書とキー ファイルを削除します。
    次のコマンドを使用します。
    rm /root/server.crt
     rm /root/server.key