Citrix Virtual Apps and Desktops

Comunicación WebSocket entre el VDA y el Delivery Controller

En este artículo se describe cómo configurar una conexión WebSocket para la comunicación entre los VDA y los Delivery Controllers.

Información general

El protocolo WebSocket funciona a través del protocolo Citrix Brokering y facilita una comunicación estable entre los Delivery Controllers y los VDA. El uso del protocolo WebSocket para la comunicación ofrece las siguientes ventajas:

  • Solo requiere el puerto TLS 443 para la comunicación del VDA al Delivery Controller.
  • Proporciona canales de comunicación fiables y sin interrupciones entre los VDA y los Delivery Controllers.

Funcionamiento

En la siguiente sección se describe el flujo de trabajo para la conexión WebSocket entre un Delivery Controller y un VDA:

  1. Los administradores de Citrix Virtual Apps and Desktops inician el proceso aprovisionando los VDA mediante Machine Creation Services (MCS).
  2. Durante el proceso de aprovisionamiento con MCS, MCS genera pares de claves públicas-privadas para cada VDA y registra las claves públicas en el servicio de confianza de FMA en el Delivery Controller. MCS guarda el par de claves pública-privada como un archivo en el disco de identidad de los VDA.
  3. Cuando se inicia la máquina VDA, el agente de MCS instalado en la máquina VDA lee el par de claves del disco de identidad y escribe esta información en la ubicación del Registro del VDA.
  4. El agente broker instalado en el VDA lee los pares de claves del registro y genera una solicitud WebSocket compatible con SSL dirigida al Delivery Controller con la clave de servicio firmada por la clave privada.
  5. El Delivery Controller verifica el encabezado de autorización de la clave de servicio firmada con la clave pública del servicio de confianza de FMA.
  6. Una vez finalizada la verificación, el sistema establece la conexión WebSocket entre el VDA y el Delivery Controller.

Compatibilidad con WebSocket para VDA unidos a AD

Antes de comenzar

  1. Configure el sitio. Para obtener más información, consulte Crear un sitio.
  2. Instale los certificados TLS en los Delivery Controllers. Para obtener más información, consulte Instalar certificados de servidor TLS en los Controllers.
  3. Instale la CA raíz y la CA intermedia en el VDA para confiar en el Delivery Controller.

Procedimiento

Siga las instrucciones para configurar una conexión WebSocket:

  1. Habilite la conexión WebSocket en el Delivery Controller. Ejecute el siguiente comando en cada Delivery Controller presente en su sitio:

    New-ItemProperty "HKLM:\SOFTWARE\Citrix\DesktopServer\WorkerProxy" -Name "WebSocket_Enabled" -PropertyType "DWord" -Value 1 -Force

    Nota:

    Asegúrese de reiniciar los Delivery Controllers después de habilitar el WebSocket.

  2. Cree un catálogo de máquinas para los VDA unidos a AD con aprovisionamiento de MCS. Para obtener más información, consulte Crear un catálogo de máquinas.
  3. Cree un grupo de entrega y agréguele su VDA. Para obtener más información, consulte Crear grupos de entrega.
  4. Habilite la conexión de WebSocket en el VDA. Ejecute el siguiente comando en el VDA:

    New-ItemProperty "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CitrixBrokerAgent\WebSocket" -Name "Enabled" -PropertyType "DWord" -Value 1 -Force
    <!--NeedCopy-->
    
    • Para comprobar si el VDA está conectado al servidor a través de WebSocket, compruebe el siguiente valor de clave de registro.

      Clave:

       HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CitrixBrokerAgent\WebSocket
       <!--NeedCopy-->
      

      Nombre: Connected

      Tipo: REG_DWORD

      Valor: 1 o 0

      1: VDA conectado al servidor mediante WebSocket.

      0: el VDA no puede acceder al servidor a través de WebSocket o WebSocket no está habilitado.

    • Para comprobar si WebSocket está habilitado, compruebe el siguiente valor de clave de Registro. El valor de Enabled debe ser 1.

      Clave:

       HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CitrixBrokerAgent\WebSocket
       <!--NeedCopy-->
      

      Nombre: Enabled

      Tipo: REG_DWORD

      Valor: 1

Comunicación WebSocket entre el VDA y el Delivery Controller