Linux Virtual Delivery Agent

Duplication de session

La duplication de sessions permet aux administrateurs de domaine d’afficher les sessions ICA® des utilisateurs au sein d’un intranet. Cette fonctionnalité utilise noVNC pour se connecter aux sessions ICA.

Remarque :

Pour utiliser cette fonctionnalité, utilisez Citrix Director 7.16 ou une version ultérieure.

Installation et configuration

Dépendances

Deux nouvelles dépendances, python-websockify et x11vnc, sont requises pour la duplication de session. Installez python-websockify et x11vnc manuellement après avoir installé le VDA Linux.

Pour RHEL 7.x et Amazon Linux2 :

Exécutez les commandes suivantes pour installer python-websockify et x11vnc (version 0.9.13 ou ultérieure de x11vnc) :

sudo pip3 install websockify
-  sudo yum install x11vnc
<!--NeedCopy-->

(Pour RHEL 7.x) Résolvez python-websockify et x11vnc en activant les dépôts Extra Packages for Enterprise Linux (EPEL) et RPM facultatifs :

  • EPEL

    Le dépôt EPEL est requis pour x11vnc. Exécutez la commande suivante pour activer le dépôt EPEL :

     yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
     <!--NeedCopy-->
    
  • RPM facultatifs

    Exécutez la commande suivante pour activer le dépôt RPM facultatif afin d’installer certains packages de dépendance de x11vnc :

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

Pour RHEL 8.x/9.0 et Rocky Linux 8.6/9.0 :

Exécutez les commandes suivantes pour installer python-websockify et x11vnc (version 0.9.13 ou ultérieure de x11vnc).

sudo pip3 install websockify
sudo yum install x11vnc
<!--NeedCopy-->

Résolvez x11vnc en activant les dépôts EPEL et 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-->

Pour Ubuntu :

Exécutez les commandes suivantes pour installer python-websockify et x11vnc (version 0.9.13 ou ultérieure de x11vnc) :

sudo pip3 install websockify
sudo apt-get install x11vnc
<!--NeedCopy-->

Pour SUSE :

Exécutez les commandes suivantes pour installer python-websockify et x11vnc (version 0.9.13 ou ultérieure de x11vnc) :

-  sudo pip3 install websockify
-  sudo zypper install x11vnc
<!--NeedCopy-->
  • Pour Debian :

Exécutez les commandes suivantes pour installer python-websockify et x11vnc (version 0.9.13 ou ultérieure de x11vnc) :

sudo pip3 install websockify
sudo apt-get install x11vnc
<!--NeedCopy-->

Port

La fonctionnalité de duplication de session sélectionne automatiquement les ports disponibles entre 6001 et 6099 pour établir des connexions entre le VDA Linux et Citrix Director. Par conséquent, le nombre de sessions ICA que vous pouvez dupliquer simultanément est limité à 99. Assurez-vous que suffisamment de ports sont disponibles pour répondre à vos besoins, en particulier pour la duplication de sessions multiples.

Registre

  • Le tableau suivant répertorie les entrées de registre associées :

  • Registre Description Valeur par défaut
  • |—————————————|————————————————————————–|————————|
  • EnableSessionShadowing Active ou désactive la fonctionnalité de duplication de session 1 (Activé)
  • ShadowingUseSSL Détermine s’il faut chiffrer la connexion entre le VDA Linux et Citrix Director 0 (Désactivé)

Exécutez la commande ctxreg sur le VDA Linux pour modifier les valeurs de registre. Par exemple, pour désactiver la duplication de session, exécutez la commande suivante :

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

SSL

La connexion noVNC entre le VDA Linux et Citrix Director utilise le protocole WebSocket. Pour la duplication de session, le choix entre ws:// et wss:// dépend de l’entrée de registre « ShadowingUseSSL » mentionnée précédemment. Par défaut, ws:// est choisi. Cependant, pour des raisons de sécurité, nous vous recommandons d’utiliser wss:// et d’installer des certificats sur chaque client Citrix Director et sur chaque serveur VDA Linux. Citrix décline toute responsabilité en matière de sécurité pour la duplication de session du VDA Linux utilisant ws://.

Obtenir les certificats SSL de serveur et racine

Les certificats doivent être signés par une autorité de certification (CA) approuvée.

Un certificat de serveur distinct (y compris la clé) est requis pour chaque serveur VDA Linux sur lequel vous souhaitez configurer SSL. Un certificat de serveur identifie un ordinateur spécifique, vous devez donc connaître le nom de domaine complet (FQDN) de chaque serveur. Vous pouvez utiliser un certificat générique pour l’ensemble du domaine à la place. Dans ce cas, vous devez connaître au moins le nom de domaine.

Un certificat racine est également requis pour chaque client Citrix Director qui communique avec le VDA Linux. Les certificats racines sont disponibles auprès des mêmes autorités de certification qui émettent les certificats de serveur.

Vous pouvez installer des certificats de serveur et de client à partir des autorités de certification suivantes :

  • Une autorité de certification fournie avec votre système d’exploitation
  • Une autorité de certification d’entreprise (une autorité de certification que votre organisation met à votre disposition)
  • Une autorité de certification non fournie avec votre système d’exploitation

Consultez l’équipe de sécurité de votre organisation pour connaître les méthodes qu’elle exige pour l’obtention des certificats.

Important :

  • Le nom commun d’un certificat de serveur doit être le FQDN exact du VDA Linux ou au moins le caractère générique correct plus les caractères de domaine. Par exemple, vda1.basedomain.com ou *.basedomain.com.
  • Les algorithmes de hachage, y compris SHA1 et MD5, sont trop faibles pour les signatures dans les certificats numériques pour que certains navigateurs les prennent en charge. SHA-256 est donc spécifié comme norme minimale.

Installer un certificat racine sur chaque client Citrix Director

La duplication de session utilise le même magasin de certificats basé sur le registre qu’IIS, vous pouvez donc installer des certificats racines à l’aide d’IIS ou du composant logiciel enfichable Certificats de la console de gestion Microsoft (MMC). Lorsque vous recevez un certificat d’une autorité de certification, vous pouvez redémarrer l’Assistant Certificat de serveur Web dans IIS et l’assistant installe le certificat. Vous pouvez également afficher et importer des certificats sur l’ordinateur à l’aide de la MMC et ajouter le certificat en tant que composant logiciel enfichable autonome. Internet Explorer et Google Chrome importent les certificats installés sur votre système d’exploitation par défaut. Pour Mozilla Firefox, vous devez importer vos certificats SSL racines dans l’onglet Autorités du Gestionnaire de certificats.

Installer un certificat de serveur et sa clé sur chaque serveur VDA Linux

Nommez les certificats de serveur « shadowingcert.* » et le fichier de clé « shadowingkey.* » (* indique le format, par exemple, shadowingcert.pem et shadowingkey.key). Placez les certificats de serveur et les fichiers de clé sous le chemin d’accès /etc/xdl/shadowingssl et protégez-les correctement avec des autorisations restreintes. Un nom ou un chemin incorrect empêche le VDA Linux de trouver un certificat ou un fichier de clé spécifique et entraîne donc un échec de connexion avec Citrix Director.

Utilisation

Depuis Citrix Director, recherchez la session cible et cliquez sur Dupliquer dans la vue Détails de la session pour envoyer une demande de duplication au VDA Linux.

L’onglet de duplication

Une fois la connexion initialisée, une confirmation apparaît sur le client de session ICA (pas le client Citrix Director) pour demander à l’utilisateur l’autorisation de dupliquer la session.

Autoriser un administrateur à dupliquer cette session

Si l’utilisateur clique sur Oui, une fenêtre apparaît côté Citrix Director, indiquant que la session ICA est en cours de duplication.

Pour plus d’informations sur l’utilisation, consultez la documentation de Citrix Director.

Limitations

  • La duplication de session est conçue pour être utilisée uniquement dans un intranet. Elle ne fonctionne pas pour les réseaux externes, même en se connectant via Citrix Gateway. Citrix décline toute responsabilité pour la duplication de session du VDA Linux dans un réseau externe.
  • Lorsque la duplication de session est activée, un administrateur de domaine ne peut que visualiser les sessions ICA, mais n’a pas l’autorisation de les écrire ou de les contrôler.
  • Après qu’un administrateur a cliqué sur Dupliquer depuis Citrix Director, une confirmation apparaît pour demander à l’utilisateur l’autorisation de dupliquer la session. Une session ne peut être dupliquée que si l’utilisateur de la session donne son autorisation.
  • La confirmation mentionnée précédemment a une limite de temps de 20 secondes. Une demande de duplication échoue lorsque le temps est écoulé.

  • Une session ne peut être mise en miroir que par un seul administrateur. Par exemple, si l’administrateur B envoie une demande de mise en miroir pour une session que l’administrateur A est en train de mettre en miroir, la confirmation d’obtention de l’autorisation de l’utilisateur réapparaît sur l’appareil de l’utilisateur. Si l’utilisateur accepte, la connexion de mise en miroir de l’administrateur A s’arrête et une nouvelle connexion de mise en miroir est établie pour l’administrateur B. Si un administrateur envoie une autre demande de mise en miroir pour la même session, une nouvelle connexion de mise en miroir peut également être établie.
  • Pour utiliser la mise en miroir de session, installez Citrix Director 7.16 ou une version ultérieure.
  • Un client Citrix Director utilise un nom de domaine complet (FQDN) plutôt qu’une adresse IP pour se connecter au serveur Linux VDA cible. Par conséquent, le client Citrix Director doit être en mesure de résoudre le FQDN du serveur Linux VDA.

Dépannage

Si la mise en miroir de session échoue, effectuez le débogage à la fois sur le client Citrix Director et sur le Linux VDA.

Sur le client Citrix Director

Via les outils de développement du navigateur, vérifiez les journaux de sortie sous l’onglet Console. Ou, vérifiez la réponse de l’API ShadowLinuxSession sous l’onglet Réseau. Si la confirmation d’obtention de l’autorisation de l’utilisateur apparaît mais que l’établissement de la connexion échoue, effectuez un ping manuel sur le FQDN du VDA pour vérifier que Citrix Director peut résoudre le FQDN. S’il y a un problème avec la connexion wss://, vérifiez vos certificats.

Sur le Linux VDA

Vérifiez que la confirmation d’obtention de l’autorisation de l’utilisateur apparaît en réponse à une demande de mise en miroir. Si ce n’est pas le cas, vérifiez les fichiers vda.log et hdx.log pour trouver des indices. Pour obtenir le fichier vda.log, procédez comme suit :

  1. Recherchez le fichier /etc/xdl/ctx-vda.conf. Décommentez la ligne suivante pour activer la configuration de vda.log :

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

  2. Ouvrez /etc/xdl/log4j.xml, localisez la partie com.citrix.dmc et remplacez « info » par « trace » comme suit :

     <!-- Broker Agent Plugin - Director VDA plugin Logger -->
    
      <logger name="com.citrix.dmc">
    
        <level value="trace"/>
    
      </logger>
    <!--NeedCopy-->
    
  3. Exécutez la commande service ctxvda restart pour redémarrer le service ctxvda.

S’il y a une erreur lors de l’établissement de la connexion :

  1. Vérifiez toute limitation de pare-feu qui empêcherait la mise en miroir de session d’ouvrir le port.
  2. Vérifiez que vous avez correctement nommé les certificats et les fichiers de clés et que vous les avez placés au bon endroit s’il s’agit du scénario SSL.
  3. Vérifiez qu’il reste suffisamment de ports entre 6001 et 6099 pour les nouvelles demandes de mise en miroir.
Duplication de session