Duplicación de sesiones
La duplicación de sesiones permite a los administradores de dominio ver las sesiones ICA® de los usuarios en una intranet. La función usa noVNC para conectarse a las sesiones ICA.
Nota:
Para usar la función, usa
Citrix Director7.16 o posterior.
Instalación y configuración
Dependencias
Se necesitan dos nuevas dependencias, python-websockify y x11vnc, para la duplicación de sesiones. Instala python-websockify y x11vnc manualmente después de instalar el VDA de Linux.
Para RHEL 7.x y Amazon Linux2:
Ejecuta los siguientes comandos para instalar python-websockify y x11vnc (versión 0.9.13 o posterior de x11vnc):
sudo pip3 install websockify
- sudo yum install x11vnc
<!--NeedCopy-->
(Para RHEL 7.x) Resuelve python-websockify y x11vnc habilitando los repositorios Extra Packages for Enterprise Linux (EPEL) y RPM opcionales:
-
EPEL
El repositorio EPEL es necesario para
x11vnc. Ejecuta el siguiente comando para habilitar el repositorio EPEL:yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm <!--NeedCopy--> -
RPM opcionales
Ejecuta el siguiente comando para habilitar el repositorio
RPMopcional para instalar algunos paquetes de dependencia dex11vnc:subscription-manager repos --enable rhel-7-server-optional-rpms --enable rhel-7-server-extras-rpms <!--NeedCopy-->
Para RHEL 8.x/9.0 y Rocky Linux 8.6/9.0:
Ejecuta los siguientes comandos para instalar python-websockify y x11vnc (versión 0.9.13 o posterior de x11vnc).
sudo pip3 install websockify
sudo yum install x11vnc
<!--NeedCopy-->
Resuelve x11vnc habilitando los repositorios EPEL y CodeReady Linux Builder:
dnf install -y --nogpgcheck https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
subscription-manager repos --enable "codeready-builder -for-rhel-8-x86_64-rpms"
<!--NeedCopy-->
Para Ubuntu:
Ejecuta los siguientes comandos para instalar python-websockify y x11vnc (versión 0.9.13 o posterior de x11vnc):
sudo pip3 install websockify
sudo apt-get install x11vnc
<!--NeedCopy-->
Para SUSE:
Ejecuta los siguientes comandos para instalar python-websockify y x11vnc (versión 0.9.13 o posterior de x11vnc):
- sudo pip3 install websockify
- sudo zypper install x11vnc
<!--NeedCopy-->
- Para Debian:
Ejecuta los siguientes comandos para instalar python-websockify y x11vnc (versión 0.9.13 o posterior de x11vnc):
sudo pip3 install websockify
sudo apt-get install x11vnc
<!--NeedCopy-->
Puerto
La función de duplicación de sesiones selecciona automáticamente los puertos disponibles entre 6001 y 6099 para establecer conexiones desde el VDA de Linux a Citrix Director. Por lo tanto, el número de sesiones ICA que puedes duplicar simultáneamente está limitado a 99. Asegúrate de que haya suficientes puertos disponibles para satisfacer tus requisitos, especialmente para la duplicación de varias sesiones.
Registro
-
La siguiente tabla enumera los registros relacionados:
-
Registro Descripción Valor predeterminado - | —————– | – | – |
-
EnableSessionShadowing Habilita o inhabilita la función de duplicación de sesiones 1 (Habilitado) -
ShadowingUseSSL Determina si se cifra la conexión entre el VDA de Linux y Citrix Director 0 (Inhabilitado)
Ejecuta el comando ctxreg en el VDA de Linux para cambiar los valores del registro. Por ejemplo, para inhabilitar la duplicación de sesiones, ejecuta el siguiente comando:
/opt/Citrix/VDA/bin/ctxreg update -k "HKLM\Software\Citrix\VirtualDesktopAgent" -v "EnableSessionShadowing" -d 0x00000000
SSL
La conexión noVNC entre el VDA de Linux y Citrix Director usa el protocolo WebSocket. Para la duplicación de sesiones, la elección entre ws:// o wss:// depende del registro “ShadowingUseSSL” mencionado anteriormente. De forma predeterminada, se elige ws://. Sin embargo, por motivos de seguridad, te recomendamos que uses wss:// e instales certificados en cada cliente de Citrix Director y en cada servidor VDA de Linux. Citrix declina toda responsabilidad de seguridad por la duplicación de sesiones del VDA de Linux mediante ws://.
Obtener certificados SSL de servidor y raíz
Los certificados deben estar firmados por una entidad de certificación (CA) de confianza.
Se necesita un certificado de servidor independiente (incluida la clave) para cada servidor VDA de Linux en el que quieras configurar SSL. Un certificado de servidor identifica un equipo específico, por lo que debes conocer el nombre de dominio completo (FQDN) de cada servidor. En su lugar, puedes usar un certificado comodín para todo el dominio. En este caso, debes conocer al menos el nombre de dominio.
También se necesita un certificado raíz para cada cliente de Citrix Director que se comunica con el VDA de Linux. Los certificados raíz están disponibles en las mismas CA que emiten los certificados de servidor.
Puedes instalar certificados de servidor y cliente de las siguientes CA:
- Una CA que se incluye con tu sistema operativo
- Una CA empresarial (una CA a la que tu organización te da acceso)
- Una CA que no se incluye con tu sistema operativo
Consulta al equipo de seguridad de tu organización para saber qué métodos requieren para obtener certificados.
Importante:
- El nombre común de un certificado de servidor debe ser el FQDN exacto del VDA de Linux o, al menos, el comodín correcto más los caracteres de dominio. Por ejemplo, vda1.basedomain.com o *.basedomain.com.
- Los algoritmos hash, incluidos SHA1 y MD5, son demasiado débiles para las firmas de certificados digitales para que algunos navegadores los admitan. Por lo tanto, SHA-256 se especifica como el estándar mínimo.
Instalar un certificado raíz en cada cliente de Citrix Director
La duplicación de sesiones usa el mismo almacén de certificados basado en el registro que IIS, por lo que puedes instalar certificados raíz usando IIS o el complemento Certificados de Microsoft Management Console (MMC). Cuando recibes un certificado de una CA, puedes reiniciar el Asistente para certificados de servidor web en IIS y el asistente instala el certificado. Alternativamente, puedes ver e importar certificados en el equipo usando la MMC y agregar el certificado como un complemento independiente. Internet Explorer y Google Chrome importan los certificados instalados en tu sistema operativo de forma predeterminada. Para Mozilla Firefox, debes importar tus certificados SSL raíz en la ficha Autoridades del Administrador de certificados.
Instalar un certificado de servidor y su clave en cada servidor VDA de Linux
Nombra los certificados de servidor “shadowingcert.*” y el archivo de clave “shadowingkey.*” (* indica el formato, por ejemplo, shadowingcert.pem y shadowingkey.key). Coloca los certificados de servidor y los archivos de clave en la ruta /etc/xdl/shadowingssl y protégelos correctamente con permisos restringidos. Un nombre o una ruta incorrectos hacen que el VDA de Linux no pueda encontrar un certificado o archivo de clave específico y, por lo tanto, provoca un error de conexión con Citrix Director.
Uso
Desde Citrix Director, busca la sesión de destino y haz clic en Duplicar en la vista Detalles de la sesión para enviar una solicitud de duplicación al VDA de Linux.

Después de que la conexión se inicialice, aparece una confirmación en el cliente de la sesión ICA (no en el cliente de Citrix Director) para pedir al usuario permiso para duplicar la sesión.

Si el usuario hace clic en Sí, aparece una ventana en el lado de Citrix Director, lo que indica que la sesión ICA se está duplicando.
Para obtener más información sobre el uso, consulta la documentación de Citrix Director.
Limitaciones
- La duplicación de sesiones está diseñada para usarse solo en una intranet. No funciona para redes externas, incluso si se conecta a través de Citrix Gateway. Citrix declina toda responsabilidad por la duplicación de sesiones del VDA de Linux en una red externa.
- Con la duplicación de sesiones habilitada, un administrador de dominio solo puede ver las sesiones ICA, pero no tiene permiso para escribir ni controlarlas.
- Después de que un administrador haga clic en Duplicar desde
Citrix Director, aparece una confirmación para pedir al usuario permiso para duplicar la sesión. Una sesión solo se puede duplicar cuando el usuario de la sesión da el permiso. -
La confirmación mencionada anteriormente tiene una limitación de tiempo de espera de 20 segundos. Una solicitud de duplicación falla cuando se agota el tiempo.
- Una sesión solo puede ser supervisada por un administrador. Por ejemplo, si el administrador B envía una solicitud de supervisión para una sesión que el administrador A está supervisando, la confirmación para obtener el permiso del usuario vuelve a aparecer en el dispositivo del usuario. Si el usuario acepta, la conexión de supervisión del administrador A se detiene y se establece una nueva conexión de supervisión para el administrador B. Si un administrador envía otra solicitud de supervisión para la misma sesión, también se puede establecer una nueva conexión de supervisión.
- Para usar la supervisión de sesiones, instala
Citrix Director7.16 o posterior. - Un cliente de
Citrix Directorusa un FQDN en lugar de una dirección IP para conectarse al servidor VDA de Linux de destino. Por lo tanto, el cliente deCitrix Directordebe poder resolver el FQDN del servidor VDA de Linux.
Solución de problemas
Si la supervisión de sesiones falla, depura tanto en el cliente de Citrix Director como en el VDA de Linux.
En el cliente de Citrix Director
A través de las herramientas de desarrollador del navegador, comprueba los registros de salida en la ficha Consola. O bien, comprueba la respuesta de la API ShadowLinuxSession en la ficha Red. Si aparece la confirmación para obtener el permiso del usuario, pero la conexión falla, haz ping manualmente al FQDN del VDA para verificar que Citrix Director pueda resolver el FQDN. Si hay un problema con la conexión wss://, comprueba tus certificados.
En el VDA de Linux
Verifica que la confirmación para obtener el permiso del usuario aparece en respuesta a una solicitud de supervisión. Si no es así, comprueba los archivos vda.log y hdx.log en busca de pistas. Para obtener el archivo vda.log, haz lo siguiente:
-
Busca el archivo /etc/xdl/ctx-vda.conf. Descomenta la siguiente línea para habilitar la configuración de vda.log:
Log4jConfig="/etc/xdl/log4j.xml" -
Abre /etc/xdl/log4j.xml, busca la parte com.citrix.dmc y cambia “info” por “trace” de la siguiente manera:
<!-- Broker Agent Plugin - Director VDA plugin Logger --> <logger name="com.citrix.dmc"> <level value="trace"/> </logger> <!--NeedCopy--> -
Ejecuta el comando
service ctxvda restartpara reiniciar el servicioctxvda.
Si hay un error durante el establecimiento de la conexión:
- Comprueba si hay alguna limitación del firewall que impida que la supervisión de sesiones abra el puerto.
- Verifica que hayas nombrado correctamente los certificados y los archivos de clave y que los hayas colocado en la ruta correcta si se trata del escenario SSL.
- Verifica que queden suficientes puertos entre 6001 y 6099 para nuevas solicitudes de supervisión.