Linux Virtual Delivery Agent

Remedar sesiones

La función Remedo de sesiones permite a los administradores de dominio ver las sesiones ICA de los usuarios en una red de intranet. Esta función usa noVNC para conectarse a las sesiones ICA y solo se admite en RHEL 7.x y Ubuntu 16.04.

Nota:

Para usar la función de remedo de sesiones, la versión de Citrix Director debe ser 7.16 o una versión posterior.

Instalación y configuración

Dependencias

Se requieren dos dependencias nuevas, python-websockify y x11vnc, para el remedo de sesiones. Las dependencias python-websockify y x11vnc se instalan automáticamente cuando se instala Linux VDA en Ubuntu 16.04. En RHEL 7.x, debe instalar python-websockify y x11vnc manualmente después de instalar Linux VDA.

Ejecute el siguiente comando en RHEL 7.x para instalar python-websockify y x11vnc (x11vnc versión 0.9.13 o posterior).

sudo yum install -y python-websockify x11vnc
<!--NeedCopy-->

Para resolver python-websockify y x11vnc, habilite los siguientes repositorios en RHEL 7.x:

  • Extra Packages for Enterprise Linux (EPEL)

    El repositorio EPEL es necesario tanto para python-websockify como para x11vnc. Ejecute el siguiente comando para habilitar el repositorio de EPEL:

     sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-$(rpm -E '%{rhel}').noarch.rpm
     <!--NeedCopy-->
    
  • RPM opcionales

    Ejecute uno de estos comandos para habilitar el repositorio de RPM opcionales para instalar algunos paquetes de dependencias de x11vnc:

    Para la estación de trabajo:

     subscription-manager repos --enable=rhel-7-workstation-optional-rpms
     <!--NeedCopy-->
    

    Para el servidor:

     subscription-manager repos --enable=rhel-7-server-optional-rpms
     <!--NeedCopy-->
    

Port

La función de remedo de sesiones selecciona automáticamente los puertos disponibles desde el puerto 6001 al puerto 6099 para crear las conexiones de Linux VDA a Citrix Director. Por lo tanto, la cantidad de sesiones ICA que puede remedar simultáneamente se limita a 99. Compruebe que haya puertos disponibles suficientes para ajustarse a sus necesidades, sobre todo para el remedo de varias sesiones.

Registro

Esta tabla contiene los registros relacionados:

Registro Descripción Valor predeterminado
EnableSessionShadowing Activa o desactiva el remedo de sesiones. 1 (Habilitada)
ShadowingUseSSL Determina si cifrar la conexión entre Linux VDA y Citrix Director. 0 (Inhabilitada)

Ejecute el comando ctxreg en Linux VDA para cambiar los valores de Registro. Por ejemplo, para inhabilitar el remedo de sesiones, ejecute el siguiente comando:

/opt/Citrix/VDA/bin/ctxreg update -k "HKLM\Software\Citrix\VirtualDesktopAgent" -v "EnableSessionShadowing" -d 0x00000000

SSL

La conexión noVNC entre Linux VDA y Citrix Director usa el protocolo WebSocket. Para el remedo de sesiones, es el registro “ShadowingUseSSL” mencionado anteriormente quien determina si se selecciona ws:// o wss://. De forma predeterminada, se elige ws://. Sin embargo, por razones de seguridad, Citrix recomienda usar wss:// e instalar certificados en cada cliente Citrix Director y en cada servidor Linux VDA. Citrix renuncia a toda responsabilidad de seguridad sobre el remedo de sesiones de Linux VDA mediante ws://.

Obtener certificados SSL raíz y de servidor

Los certificados deben estar firmados por una entidad de confianza llamada Entidad de certificación (CA).

Se necesita un certificado de servidor (clave incluida) por cada servidor Linux VDA donde quiera configurar SSL. Un certificado de servidor identifica a un equipo concreto, de modo que necesita el nombre de dominio completo (FQDN) de cada servidor. Para mayor comodidad, puede usar un certificado comodín para todo el dominio. En ese caso, debe conocer al menos el nombre de dominio.

Además de instalar un certificado de servidor en cada servidor, debe instalar un certificado raíz de la misma autoridad de certificación en cada cliente Citrix Director que se comunique con el servidor Linux VDA. Los certificados de raíz están disponibles en las mismas CA que emiten los certificados de servidor. Puede instalar certificados de servidor y de cliente provenientes de una autoridad de certificación: integrada en el sistema operativo, de la empresa (una autoridad de certificación que su empresa pone a su disposición) o una CA no integrada en el sistema operativo. Consulte al equipo de seguridad de su organización para saber qué método es necesario para obtener certificados.

Importante:

  • El nombre común de un certificado de servidor debe contener el FQDN exacto del servidor Linux VDA o, al menos, el comodín y los caracteres de dominio correctos. Por ejemplo, vda1.dominiobase.com o *.dominiobase.com.
  • Algunos exploradores Web no admiten los algoritmos hash, incluidos SHA1 y MD5, porque estos ofrecen demasiado poca seguridad para las firmas en los certificados digitales. Por lo tanto, se especifica SHA-256 como el estándar mínimo.

Instalar un certificado raíz en cada cliente Citrix Director

El remedo se sesiones usa el mismo almacén de certificados (basado en el registro del sistema) que IIS, de modo que se puede instalar certificados con IIS o el complemento de certificados de Microsoft Management Console (MMC). Cuando reciba un certificado de la entidad de certificación, puede reiniciar el asistente para certificados de servidor web en IIS y será el asistente quien instalará el certificado. Como alternativa, puede ver e importar certificados en el equipo. Para ello, abra MMC y agregue el certificado como un complemento independiente a dicha consola. Internet Explorer y Google Chrome importan los certificados instalados en su sistema operativo de forma predeterminada. Para Mozilla Firefox, debe importar los certificados SSL raíz en la ficha Autoridades del Administrador de certificados.

Instalar un certificado de servidor y su clave en cada servidor Linux VDA

Denomine los certificados de servidor “shadowingcert.*” y el archivo de clave “shadowingkey.*” (el asterisco, *, puede indicar el formato, como en shadowingcert.csr y shadowingkey.key). Coloque los certificados de servidor y los archivos de clave en la ruta /etc/xdl/shadowingssl y protéjalos con permisos restringidos. Un nombre o una ruta incorrectos impide a Linux VDA encontrar un certificado o archivo de clave concreto, lo que causa un error de conexión con Citrix Director.

Uso

Desde Citrix Director, busque la sesión de destino y haga clic en Remedar en la vista Detalles de la sesión para enviar una solicitud de remedo a Linux VDA.

Imagen de la ficha de remedo en la vista de detalles de sesión

Una vez inicializada la conexión, aparece una confirmación en el cliente de la sesión ICA (no en el cliente Citrix Director) para solicitar permiso al usuario para remedar la sesión.

Imagen sobre cómo permitir a un administrador remedar esta sesión

Si el usuario hace clic en , aparecerá una ventana en la parte de Citrix Director que indicará que se está aplicando el remedo a la sesión ICA.

Para obtener más información de uso, consulte la documentación de Citrix Director.

Limitaciones

  • El remedo de sesiones está pensado para usarlo únicamente en la intranet. No funciona para redes externas, ni siquiera en conexiones a través de Citrix Gateway. Citrix renuncia a cualquier responsabilidad sobre el remedo de sesiones de Linux VDA en una red externa.
  • Con el remedo de sesiones habilitado, un administrador de dominio solo puede ver las sesiones ICA (no tiene permiso de escritura en ellas ni las controla).
  • Después de que un administrador haga clic en Remedar en Citrix Director, aparecerá una confirmación donde se pide permiso al usuario para remedar la sesión. Una sesión solo puede remedarse cuando el usuario de la sesión lo permita.
  • La confirmación mencionada tiene 20 segundos de tiempo de espera. Por tanto, una solicitud de remedo falla cuando se agota este tiempo.
  • Solo un administrador puede remedar una sesión ICA en una ventana de Citrix Director. Si un administrador A remeda una sesión ICA mientras un administrador B envía una solicitud de remedo, la confirmación para obtener el permiso del usuario vuelve a aparecer en el dispositivo del usuario. Si el usuario permite el segundo remedo, la conexión de remedo del administrador A se detiene y se crea una nueva conexión de remedo para el administrador B. Ocurre lo mismo si un mismo administrador envía otra solicitud de remedo a la misma sesión ICA.
  • Para utilizar el remedo de sesiones, instale Citrix Director 7.16 o una versión posterior.
  • Un cliente Citrix Director utiliza un FQDN, en lugar de una dirección IP, para conectarse al servidor Linux VDA de destino. Por lo tanto, el cliente Citrix Director debe poder resolver el FQDN del servidor Linux VDA.

Solución de problemas

Si falla un remedo de sesiones, depure el cliente Citrix Director y el VDA de Linux.

En el cliente Citrix Director

Con las herramientas de desarrollador que ofrece el explorador Web, consulte los registros de salida en la ficha Consola. O bien, consulte la respuesta de la API ShadowLinuxSession en la ficha Red. Si la confirmación para obtener el permiso del usuario aparece, pero la conexión no se crea, haga ping manualmente al FQDN del Linux VDA para comprobar si Citrix Director puede resolver el FQDN. En caso de un problema con la conexión wss://, compruebe que los certificados están en orden.

En Linux VDA

Compruebe que la confirmación para obtener el permiso del usuario aparece en respuesta a una solicitud de remedo. Si no aparece, consulte los archivos vda.log y hdx.log para averiguar el porqué. Para obtener el archivo vda.log, lleve a cabo lo siguiente:

  1. Busque el archivo /etc/xdl/ctx-vda.conf. Quite los comentarios de la siguiente línea para habilitar la configuración vda.log:

    Log4jConfig=”/etc/xdl/log4j.xml”

  2. Abra /etc/xdl/log4j.xml, busque la parte com.citrix.dmc, y cambie “info” por “trace”, tal como se muestra a continuación:

     <!-- Broker Agent Plugin - Director VDA plugin Logger -->
    
      <logger name="com.citrix.dmc">
    
        <level value="trace"/>
    
      </logger>
    <!--NeedCopy-->
    
  3. Ejecute el comando service ctxvda restart para reiniciar el servicio ctxvda.

En caso de error durante la creación de la conexión:

  1. Compruebe si hay alguna limitación de firewall que impida que el remedo de sesiones abra el puerto.
  2. En el caso de utilizar SSL, compruebe que los certificados y los archivos de clave tengan los nombres correctos. Asimismo, compruebe que se encuentran en la ruta adecuada.
  3. Compruebe que haya suficientes puertos entre 6001 y 6099 para las nuevas solicitudes de remedo de sesiones.
Remedar sesiones