Pour renforcer la sécurité, vous pouvez configurer un certificat personnalisé signé par une autorité de certification pour le dispositif virtuel Horizon Cloud Connector.

Conditions préalables

  • Vérifiez que la chaîne de certificats complète est au format PEM.
  • Assurez-vous que le fichier PEM est généré avec la clé privée au lieu de la phrase secrète.
  • Vérifiez que le nom de domaine complet et l'autre nom du sujet sont inclus dans le certificat émis.

Procédure

  1. Ouvrez une session SSH sur le dispositif virtuel Horizon Cloud Connector déployé.
  2. Copiez le certificat signé par une autorité de certification dans le répertoire /root/server.crt.
  3. Copiez la clé signée par une autorité de certification dans le répertoire /root/server.key.
  4. Sauvegardez le certificat existant.
    • (Horizon Cloud Connector version 1.4 ou ultérieure) Utilisez la commande suivante :
      cp /opt/container-data/certs/hze-nginx/server.crt /opt/container-data/certs/hze-nginx/server.crt.orig
    • (Horizon Cloud Connector version 1.3 ou antérieure) Utilisez la commande suivante :
      cp /etc/nginx/ssl/server.crt /etc/nginx/ssl/server.crt.orig
  5. Sauvegardez la clé existante.
    • (Horizon Cloud Connector version 1.4 ou ultérieure) Utilisez la commande suivante :
      cp /opt/container-data/certs/hze-nginx/server.key /opt/container-data/certs/hze-nginx/server.key.orig
    • (Horizon Cloud Connector version 1.3 ou antérieure) Utilisez la commande suivante :
      cp /etc/nginx/ssl/server.key /etc/nginx/ssl/server.key.orig
  6. Copiez le fichier nginx conf existant.
    • (Horizon Cloud Connector version 1.4 ou ultérieure) Utilisez la commande suivante :
      cp /opt/container-data/conf/hze-nginx/nginx.conf /opt/container-data/conf/hze-nginx/nginx.conf.orig
    • (Horizon Cloud Connector version 1.3 ou antérieure) Utilisez la commande suivante :
      cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.orig
  7. Copiez le certificat de l'autorité de certification dans le répertoire approprié pour la version de votre dispositif virtuel.
    • (Horizon Cloud Connector version 1.4 ou ultérieure) Utilisez la commande suivante :
      cp /root/server.crt /opt/container-data/certs/hze-nginx/server.crt
    • (Horizon Cloud Connector version 1.3 ou antérieure) Utilisez la commande suivante :
      cp /root/server.crt /etc/nginx/ssl/server.crt
  8. Copiez le fichier de clé de certificat d'autorité de certification dans le répertoire approprié pour votre version de dispositif virtuel.
    • (Horizon Cloud Connector version 1.4 ou ultérieure) Utilisez la commande suivante :
      cp /root/server.key /opt/container-data/certs/hze-nginx/server.key
    • (Horizon Cloud Connector version 1.3 ou antérieure) Utilisez la commande suivante :
      cp /root/server.key /etc/nginx/ssl/server.key
  9. Vérifiez le propriétaire et les autorisations du fichier de certificat et de clé.
    • (Horizon Cloud Connector version 1.4 ou ultérieure) Utilisez les commandes suivantes :
      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 version 1.3 ou antérieure) Utilisez les commandes suivantes :
      chown -R root:root /etc/nginx/ssl
      chmod -R 600 /etc/nginx/ssl
  10. Vérifiez que le nom de domaine complet émis dans le certificat correspond à la directive du nom de serveur dans le bloc 443 d'écoute du serveur dans le fichier de configuration nginx.
    • (Horizon Cloud Connector version 1.4 ou ultérieure) Le fichier de configuration nginx se trouve dans /opt/container-data/conf/hze-nginx/nginx.conf.
    • (Horizon Cloud Connector version 1.3 ou antérieure) Le fichier de configuration nginx se trouve dans /etc/nginx/nginx.conf.
  11. Vérifiez et redémarrez nginx.
    • (Horizon Cloud Connector version 2.0 ou ultérieure) Utilisez la commande suivante :
      kubectl rollout restart daemonset hze-nginx -n hze-system
    • (Horizon Cloud Connector version 1.4 jusqu'à 1.10) Utilisez les commandes suivantes :
      docker exec -i hze-nginx sudo nginx -t 
      systemctl restart hze-nginx
    • (Horizon Cloud Connector version 1.3 ou antérieure) Utilisez les commandes suivantes :
      nginx -t
      systemctl restart nginx
  12. Mettez à jour les empreintes numériques SSL dans l'écran d'accueil.
    • (Horizon Cloud Connector version 2.0 ou ultérieure) Utilisez les commandes suivantes :
      /opt/vmware/bin/configure-welcome-screen.py
      /usr/bin/killall --quiet vami_login
    • (Horizon Cloud Connector version 1.4 jusqu'à 1.10) Utilisez les commandes suivantes :
      docker exec -i hze-core sudo /opt/vmware/bin/configure-welcome-screen.py 
      /usr/bin/killall --quiet vami_login
  13. Testez le nouveau certificat en rechargeant l'URL de l'interface utilisateur d'Horizon Cloud Connector dans un navigateur Web.
  14. (Facultatif) Si le certificat fonctionne correctement, supprimez les fichiers sauvegardés.
    • (Horizon Cloud Connector version 1.4 ou ultérieure) Utilisez les commandes suivantes :
      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 version 1.3 ou antérieure) Utilisez les commandes suivantes :
      rm /etc/nginx/ssl/server.crt.orig
      rm /etc/nginx/ssl/server.key.orig
      rm /etc/nginx/nginx.conf.orig
  15. Supprimez les certificats copiés de l'autorité de certification et les fichiers de clés dans le répertoire racine.
    Utilisez les commandes suivantes :
    rm /root/server.crt
     rm /root/server.key