Para mejorar la seguridad, puede configurar un certificado firmado por una CA personalizado para el dispositivo virtual Horizon Cloud Connector.

Requisitos previos

  • Verifique que la cadena de certificados completa está disponible en el formato PEM.
  • Asegúrese de que el archivo PEM se genere con la clave privada (en lugar de con la frase de contraseña).
  • Verifique que el nombre alternativo del sujeto y el FQDN esté incluido en el certificado emitido.

Procedimiento

  1. Abra una sesión SSH en el dispositivo virtual de Horizon Cloud Connector implementado.
  2. Copie el certificado firmado por una CA en el directorio /root/server.crt.
  3. Copie la clave firmada por una CA en el directorio /root/server.key.
  4. Haga una copia de seguridad del certificado existente.
    • En la versión 1.4 o posterior de Horizon Cloud Connector, utilice el siguiente comando:
      cp /opt/container-data/certs/hze-nginx/server.crt /opt/container-data/certs/hze-nginx/server.crt.orig
    • En la versión 1.3 o anterior de Horizon Cloud Connector, utilice el siguiente comando:
      cp /etc/nginx/ssl/server.crt /etc/nginx/ssl/server.crt.orig
  5. Haga una copia de seguridad de la clave existente.
    • En la versión 1.4 o posterior de Horizon Cloud Connector, utilice el siguiente comando:
      cp /opt/container-data/certs/hze-nginx/server.key /opt/container-data/certs/hze-nginx/server.key.orig
    • En la versión 1.3 o anterior de Horizon Cloud Connector, utilice el siguiente comando:
      cp /etc/nginx/ssl/server.key /etc/nginx/ssl/server.key.orig
  6. Copie el archivo nginx conf existente.
    • En la versión 1.4 o posterior de Horizon Cloud Connector, utilice el siguiente comando:
      cp /opt/container-data/conf/hze-nginx/nginx.conf /opt/container-data/conf/hze-nginx/nginx.conf.orig
    • En la versión 1.3 o anterior de Horizon Cloud Connector, utilice el siguiente comando:
      cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.orig
  7. Copie el certificado de CA en el directorio correspondiente para la versión del dispositivo virtual.
    • En la versión 1.4 o posterior de Horizon Cloud Connector, utilice el siguiente comando:
      cp /root/server.crt /opt/container-data/certs/hze-nginx/server.crt
    • En la versión 1.3 o anterior de Horizon Cloud Connector, utilice el siguiente comando:
      cp /root/server.crt /etc/nginx/ssl/server.crt
  8. Copie el archivo de clave del certificado de CA en el directorio correspondiente para la versión del dispositivo virtual.
    • En la versión 1.4 o posterior de Horizon Cloud Connector, utilice el siguiente comando:
      cp /root/server.key /opt/container-data/certs/hze-nginx/server.key
    • En la versión 1.3 o anterior de Horizon Cloud Connector, utilice el siguiente comando:
      cp /root/server.key /etc/nginx/ssl/server.key
  9. Verifique los permisos y el propietario para el archivo de clave y el certificado.
    • En la versión 1.4 o posterior de Horizon Cloud Connector, utilice los siguientes comandos:
      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
    • En la versión 1.3 o anterior de Horizon Cloud Connector, utilice los siguientes comandos:
      chown -R root:root /etc/nginx/ssl
      chmod -R 600 /etc/nginx/ssl
  10. Verifique que el FQDN emitido en el certificado coincida con la directiva de nombre de servidor que figura en el bloque 443 de escucha del servidor en el archivo de configuración nginx.
    • En la versión 1.4 o posterior de Horizon Cloud Connector, el archivo de configuración nginx se encuentra en /opt/container-data/conf/hze-nginx/nginx.conf.
    • En la versión 1.3 o anterior de Horizon Cloud Connector, el archivo de configuración nginx se encuentra en /etc/nginx/nginx.conf.
  11. Verifique y reinicie nginx.
    • En la versión 2.0 o posterior de Horizon Cloud Connector, utilice el siguiente comando:
      kubectl rollout restart daemonset hze-nginx -n hze-system
    • Entre las versiones 1.4 y 1.10 de Horizon Cloud Connector, utilice los siguientes comandos:
      docker exec -i hze-nginx sudo nginx -t 
      systemctl restart hze-nginx
    • En la versión 1.3 o anterior de Horizon Cloud Connector, utilice los siguientes comandos:
      nginx -t
      systemctl restart nginx
  12. Actualice las huellas digitales de SSL en la pantalla de bienvenida.
    • En la versión 2.0 o posterior de Horizon Cloud Connector, utilice los siguientes comandos:
      /opt/vmware/bin/configure-welcome-screen.py
      /usr/bin/killall --quiet vami_login
    • Entre las versiones 1.4 y 1.10 de Horizon Cloud Connector, utilice los siguientes comandos:
      docker exec -i hze-core sudo /opt/vmware/bin/configure-welcome-screen.py 
      /usr/bin/killall --quiet vami_login
  13. Pruebe el nuevo certificado volviendo a cargar la URL de la interfaz de usuario de Horizon Cloud Connector en un navegador web.
  14. (opcional) Si el certificado funciona correctamente, elimine la copia de seguridad de los archivos.
    • En la versión 1.4 o posterior de Horizon Cloud Connector, utilice los siguientes comandos:
      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
    • En la versión 1.3 o anterior de Horizon Cloud Connector, utilice los siguientes comandos:
      rm /etc/nginx/ssl/server.crt.orig
      rm /etc/nginx/ssl/server.key.orig
      rm /etc/nginx/nginx.conf.orig
  15. Elimine los archivos de clave y los certificados de una CA copiados en el directorio raíz.
    Utilice los siguientes comandos:
    rm /root/server.crt
     rm /root/server.key