Linux Virtual Delivery Agent

Mise en miroir de session

La mise en miroir de sessions permet aux administrateurs de domaine d’afficher les sessions ICA® des utilisateurs dans 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 mise en miroir 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 résoudre python-websockify et x11vnc, activez les dépôts Extra Packages for Enterprise Linux (EPEL) et RPMs facultatifs sur RHEL 7.x :

  • 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-->
    
  • RPMs facultatifs

    Exécutez la commande suivante pour activer le dépôt RPMs facultatif pour l’installation de 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 et Rocky Linux 8 :

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 résoudre x11vnc, activez 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 mise en miroir 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 mettre en miroir simultanément est limité à 99. Assurez-vous que suffisamment de ports sont disponibles pour répondre à vos besoins, en particulier pour la mise en miroir multi-session.

Registre

  • Le tableau suivant répertorie les registres associés :

  • Registre Description Valeur par défaut
  • | —————– | – | – |
  • EnableSessionShadowing Active ou désactive la fonctionnalité de mise en miroir 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 mise en miroir 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 mise en miroir de session, le choix de ws:// ou wss:// dépend du registre « ShadowingUseSSL » mentionné 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 mise en miroir 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 (incluant 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 obtenir 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 mise en miroir de session utilise le même magasin de certificats basé sur le registre que 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. Alternativement, vous pouvez 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 par défaut les certificats installés sur votre système d’exploitation. Pour Mozilla Firefox, vous devez importer vos certificats SSL racines sous 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 /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 provoque donc un échec de connexion avec Citrix Director.

Utilisation

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

L'onglet de mise en miroir

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 mettre en miroir la session.

Autoriser un administrateur à mettre en miroir 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 mise en miroir.

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

Limitations

  • La mise en miroir 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 mise en miroir de session du VDA Linux dans un réseau externe.
  • Lorsque la mise en miroir de session est activée, un administrateur de domaine peut uniquement afficher 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 Mettre en miroir depuis Citrix Director, une confirmation apparaît pour demander à l’utilisateur l’autorisation de mettre en miroir la session. Une session ne peut être mise en miroir que si l’utilisateur de la session donne son autorisation.
  • La confirmation mentionnée précédemment a une limite de temps, qui est de 20 secondes. Une demande de mise en miroir échoue lorsque le temps est écoulé.

  • Une session ne peut être observée que par un seul administrateur. Par exemple, si l’administrateur B envoie une demande d’observation pour une session que l’administrateur A est en train d’observer, 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 d’observation de l’administrateur A s’arrête et une nouvelle connexion d’observation est établie pour l’administrateur B. Si un administrateur envoie une autre demande d’observation pour la même session, une nouvelle connexion d’observation peut également être établie.
  • Pour utiliser l’observation 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 l’observation de session échoue, effectuez un 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 dans l’onglet Console. Ou, vérifiez la réponse de l’API ShadowLinuxSession dans 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 d’observation. Si ce n’est pas le cas, vérifiez les fichiers vda.log et hdx.log pour 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 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êche l’observation 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 disponibles entre 6001 et 6099 pour les nouvelles demandes d’observation.
Mise en miroir de session