Citrix Hypervisor

Activer VNC pour les machines virtuelles Linux

Important :

La mise à jour cumulative 1 de Citrix Hypervisor 8.2 prend fin le 25 juin 2025. Planifiez votre mise à niveau vers XenServer 8 dès maintenant pour assurer une transition en douceur et un support continu. Pour plus d’informations, consultez Mise à niveau.

Si vous utilisez vos fichiers de licence Citrix Virtual Apps and Desktops pour obtenir une licence pour vos hôtes Citrix Hypervisor 8.2 Cumulative Update 1, ces fichiers de licence ne sont pas compatibles avec XenServer 8. Avant la mise à niveau, vous devez acquérir les fichiers de licence socket XenServer Premium Edition à utiliser avec XenServer 8. Ces fichiers de licence de socket sont disponibles en tant que droits des abonnements Citrix pour le cloud privé, Citrix Universal Hybrid Multi-Cloud, Citrix Universal MSP et Citrix Platform License pour l’exécution de vos charges de travail Citrix. Les clients Citrix qui n’ont pas encore migré vers ces nouveaux abonnements peuvent demander à participer à une promotion gratuite pour 10 000 licences de sockets XenServer Premium Edition. Pour plus d’informations, consultez XenServer.

Si vous n’obtenez pas de licence compatible pour XenServer 8 avant la mise à niveau, lorsque vous mettez à niveau vos hôtes, ils reviennent à l’édition d’essai de 90 jours. L’édition d’essai offre les mêmes fonctionnalités que l’édition Premium, avec quelques limitations. Pour plus d’informations, consultez Présentation des licences XenServer 8.

Les machines virtuelles ne sont peut-être pas configurées pour prendre en charge le calcul de réseau virtuel (VNC), que Citrix Hypervisor utilise pour contrôler les machines virtuelles à distance, par défaut. Avant de pouvoir vous connecter à XenCenter, assurez-vous que le serveur VNC et un gestionnaire d’affichage X sont installés sur la machine virtuelle et correctement configurés. Cette section décrit comment configurer VNC sur chacune des distributions du système d’exploitation Linux prises en charge pour permettre des interactions correctes avec XenCenter.

Pour les machines virtuelles basées sur CentOS, suivez les instructions ci-dessous, car elles utilisent le même code de base pour fournir un accès graphique à VNC. Centos X est basé sur Red Hat Enterprise Linux X.

Activer une console graphique sur les machines virtuelles Debian

Remarque :

Avant d’activer une console graphique sur votre machine virtuelle Debian, assurez-vous d’avoir installé Citrix VM Tools pour Linux. Pour plus d’informations, consultez Installer Citrix VM Tools pour Linux.

La console graphique des machines virtuelles Debian est fournie par un serveur VNC s’exécutant à l’intérieur de la machine virtuelle. Dans la configuration recommandée, un gestionnaire d’affichage standard contrôle la console de sorte qu’une boîte de dialogue de connexion est fournie.

  1. Installez votre invité Debian avec les paquets système de bureau, ou installez GDM (le gestionnaire d’affichage) en utilisant apt (en suivant les procédures standard).

  2. Installez le serveur Xvnc en utilisant apt-get (ou similaire) :

      apt-get install vnc4server
    <!--NeedCopy-->
    

    Remarque :

    L’environnement de bureau graphique Debian, qui utilise le démon Gnome Display Manager version 3, peut prendre beaucoup de temps CPU. Désinstallez le package Gnome Display Manager gdm3 et installez le package gdm comme suit :

          apt-get install gdm
          apt-get purge gdm3
    <!--NeedCopy-->
    
  3. Configurez un mot de passe VNC (ne pas en avoir est un risque de sécurité sérieux) en utilisant la commande vncpasswd . Transmettez un nom de fichier dans lequel vous pourrez écrire les informations de mot de passe. Par exemple :

      vncpasswd /etc/vncpass
    <!--NeedCopy-->
    
  4. Modifiez votre fichier gdm.conf (/etc/gdm/gdm.conf) pour configurer un serveur VNC afin de gérer l’affichage 0 en étendant les sections [serveurs] et [démon] comme suit :

          [servers]
          0=VNC
          [daemon]
          VTAllocation=false
          [server-VNC]
          name=VNC
          command=/usr/bin/Xvnc -geometry 800x600 -PasswordFile /etc/vncpass BlacklistTimeout=0
          flexible=true
    <!--NeedCopy-->
    
  5. Redémarrez GDM, puis attendez que XenCenter détecte la console graphique :

      /etc/init.d/gdm restart
    <!--NeedCopy-->
    

Remarque :

Vous pouvez vérifier que le serveur VNC est en cours d’exécution à l’aide d’une commande telle que ps ax | grep vnc.

Activation d’une console graphique sur les machines virtuelles Red Hat, CentOS ou Oracle Linux

Remarque :

Avant de configurer vos machines virtuelles Red Hat pour VNC, assurez-vous d’avoir installé Citrix VM Tools pour Linux. Pour plus d’informations, consultez Installer Citrix VM Tools pour Linux.

Pour configurer VNC sur des machines virtuelles Red Hat, modifiez la configuration GDM. La configuration GDM est contenue dans un fichier dont l’emplacement varie en fonction de la version de Red Hat Linux que vous utilisez. Avant de le modifier, déterminez d’abord l’emplacement de ce fichier de configuration. Ce fichier est modifié dans plusieurs procédures ultérieures de cette section.

Déterminez l’emplacement de votre fichier de configuration VNC

Si vous utilisez Red Hat Linux, le fichier de configuration GDM est /etc/gdm/custom.conf. Ce fichier est un fichier de configuration fractionné qui contient uniquement des valeurs spécifiées par l’utilisateur qui remplacent la configuration par défaut. Ce type de fichier est utilisé par défaut dans les versions plus récentes de GDM. Il est inclus dans ces versions de Red Hat Linux.

Configurer GDM pour utiliser VNC

  1. En tant que root sur la CLI texte dans la VM, exécutez la commande rpm -q vnc-server gdm. Les noms de paquets vnc-server et gdm apparaissent, avec leurs numéros de version spécifiés.

    Les noms de paquets affichés affichent les paquets déjà installés. Si vous voyez un message indiquant qu’un package n’est pas installé, il se peut que vous n’ayez pas sélectionné les options de bureau graphique lors de l’installation. Installez ces packages avant de pouvoir continuer. Pour plus d’informations sur l’installation de logiciels supplémentaires sur votre machine virtuelle, consultez le Guide d’installation de Red Hat Linux x86 approprié.

  2. Ouvrez le fichier de configuration GDM avec votre éditeur de texte préféré et ajoutez les lignes suivantes au fichier :

          [server-VNC]
          name=VNC Server
          command=/usr/bin/Xvnc -SecurityTypes None -geometry 1024x768 -depth 16 \
          -BlacklistTimeout 0
          flexible=true
    <!--NeedCopy-->
    

    Avec les fichiers de configuration sur Red Hat Linux, ajoutez ces lignes dans la section vide [serveurs] .

  3. Modifiez la configuration pour que le serveur Xvnc soit utilisé à la place du serveur X standard :

    • 0=Standard

      Modifiez-le comme suit :

      0=VNC

    • Si vous utilisez Red Hat Linux, ajoutez la ligne ci-dessus juste en dessous de la section [serveurs] et avant la section [serveur-VNC] .

  4. Enregistrez, puis fermez le fichier.

Redémarrez GDM pour que votre modification de configuration prenne effet, en exécutant la commande /usr/sbin/gdm-restart.

Remarque :

Red Hat Linux utilise le niveau d’exécution 5 pour le démarrage graphique. Si votre installation démarre au niveau d’exécution 3, modifiez cette configuration pour que le gestionnaire d’affichage soit démarré et ayez accès à une console graphique. Pour plus d’informations, consultez Vérifier les niveaux de course.

Paramètres du pare-feu

La configuration du pare-feu par défaut ne permet pas au trafic VNC de passer. Si vous disposez d’un pare-feu entre la machine virtuelle et XenCenter, autorisez le trafic sur le port utilisé par la connexion VNC. Par défaut, un serveur VNC écoute les connexions d’un visualiseur VNC sur le port TCP 5900 + n, où n est le numéro d’affichage (généralement zéro). Ainsi, un serveur VNC configuré pour Display-0 écoute sur le port TCP 5900, Display-1 est TCP-5901, et ainsi de suite. Consultez la documentation de votre pare-feu pour vous assurer que ces ports sont ouverts.

Si vous souhaitez utiliser le suivi des connexions IP ou limiter l’initiation des connexions à un seul côté, configurez davantage votre pare-feu.

Pour configurer le pare-feu VMS basé sur Red Hat afin d’ouvrir le port VNC :

  1. Pour Red Hat Linux, utilisez system-config-securitylevel-tui.

  2. Sélectionnez Personnaliser et ajoutez 5900 à la liste des autres ports.

Alternativement, vous pouvez désactiver le pare-feu jusqu’au prochain redémarrage en exécutant la commande service iptables stop, ou de manière permanente en exécutant chkconfig iptables off. Cette configuration peut exposer des services supplémentaires au monde extérieur et réduire la sécurité globale de votre machine virtuelle.

Résolution de l’écran VNC

Après la connexion à une machine virtuelle avec la console graphique, la résolution de l’écran ne correspond parfois pas. Par exemple, l’affichage de la machine virtuelle est trop grand pour s’adapter confortablement au volet de la console graphique. Contrôlez ce comportement en définissant le paramètre geometry du serveur VNC comme suit :

  1. Ouvrez le fichier de configuration GDM avec votre éditeur de texte préféré. Pour plus d’informations, consultez Déterminez l’emplacement de votre fichier de configuration VNC.

  2. Recherchez la section [serveur-VNC] que vous avez ajoutée ci-dessus.

  3. Modifiez la ligne de commande pour qu’elle se lise, par exemple :

      command=/usr/bin/Xvnc -SecurityTypes None -geometry 800x600
    <!--NeedCopy-->
    

    La valeur du paramètre géométrie peut être n’importe quelle largeur et hauteur d’écran valide.

  4. Enregistrez, puis fermez le fichier.

Activer VNC pour les machines virtuelles RHEL, CentOS ou OEL

Si vous utilisez Red Hat Linux, le fichier de configuration GDM est /etc/gdm/custom.conf. Ce fichier est un fichier de configuration fractionné qui contient uniquement des valeurs spécifiées par l’utilisateur qui remplacent la configuration par défaut. Par défaut, ce type de fichier est utilisé dans les versions plus récentes de GDM et est inclus dans ces versions de Red Hat Linux.

Lors de l’installation du système d’exploitation, sélectionnez Bureau mode. Sur l’écran d’installation de RHEL, sélectionnez Bureau > Personnalisez maintenant puis cliquez sur Prochain:

Capture d’écran de l’écran d’installation de RHEL

Cette action affiche l’écran du système de base, assurez-vous que Compatibilité UNIX héritée est sélectionné :

Capture d’écran de l’écran du système de base

Choisir Bureaux > Forfaits optionnels, puis sur Prochain:

Capture d’écran de l’écran des ordinateurs de bureau

Cette action affiche le Packages dans le bureau fenêtre, sélectionnez tigervnc-serveur-<version_number> puis cliquez sur Prochain:

Capture d’écran de la fenêtre Packages sur le bureau

Procédez comme suit pour poursuivre la configuration de vos machines virtuelles RHEL :

  1. Ouvrez le fichier de configuration GDM avec votre éditeur de texte préféré et ajoutez les lignes suivantes aux sections appropriées :

          [security]
          DisallowTCP=false
    
          [xdmcp]
          Enable=true
    <!--NeedCopy-->
    
  2. Créez le fichier, /etc/xinetd.d/vnc-server-stream:

          service vnc-server
          {
                        id = vnc-server
                   disable = no
                      type = UNLISTED
                      port = 5900
               socket_type = stream
                      wait = no
                      user = nobody
                     group = tty
                    server = /usr/bin/Xvnc
               server_args = -inetd -once -query localhost -SecurityTypes None \
               -geometry 800x600 -depth 16
          }
    <!--NeedCopy-->
    
  3. Entrez la commande suivante pour démarrer le service xinetd :

      # service xinetd start
    <!--NeedCopy-->
    
  4. Ouvrez le fichier /etc/sysconfig/iptables. Ajoutez la ligne suivante au-dessus de la ligne indiquant -A INPUT -j REJECT --reject-with icmp-host-prohibited:

      -A INPUT -m state --state NEW -m tcp -p tcp --dport 5900 -j ACCEPT
    <!--NeedCopy-->
    
  5. Entrez la commande suivante pour redémarrer iptables:

      # service iptables restart
    <!--NeedCopy-->
    
  6. Entrez la commande suivante pour redémarrer gdm:

          # telinit 3
          # telinit 5
    <!--NeedCopy-->
    

Remarque :

Red Hat Linux utilise le niveau d’exécution 5 pour le démarrage graphique. Si votre installation démarre au niveau d’exécution 3, modifiez cette configuration pour que le gestionnaire d’affichage soit démarré et pour avoir accès à une console graphique. Pour plus d’informations, consultez Vérifier les niveaux de course.

Configurer des machines virtuelles basées sur SLES pour VNC

Remarque :

Avant de configurer vos machines virtuelles SUSE Linux Enterprise Server pour VNC, assurez-vous d’avoir installé Citrix VM Tools pour Linux. Voir Installer Citrix VM Tools pour Linux pour plus de détails.

SLES prend en charge l’activation de « l’administration à distance » comme option de configuration dans YaST. Vous pouvez choisir d’activer l’administration à distance au moment de l’installation, disponible sur le Services réseau écran de l’installateur de SLES. Cette fonctionnalité vous permet de connecter un visualiseur VNC externe à votre invité pour vous permettre d’afficher la console graphique. La méthode d’utilisation de la fonction d’administration à distance SLES est légèrement différente de la méthode fournie par XenCenter. Toutefois, il est possible de modifier les fichiers de configuration de votre machine virtuelle SUSE Linux de manière à ce qu’elle soit intégrée à la fonctionnalité de console graphique.

Rechercher un serveur VNC

Avant d’apporter des modifications à la configuration, vérifiez qu’un serveur VNC est installé. SUSE fournit le serveur tightvnc par défaut. Ce serveur est un serveur VNC approprié, mais vous pouvez également utiliser la distribution standard RealVNC.

Vous pouvez vérifier que vous avez installé le logiciel tightvnc en exécutant la commande :

  rpm -q tightvnc
<!--NeedCopy-->

Activer l’administration à distance

Si l’administration à distance n’a pas été activée lors de l’installation du logiciel SLES, vous pouvez l’activer comme suit :

  1. Ouvrez une console texte sur la machine virtuelle et exécutez l’utilitaire YaST :

      yast
    <!--NeedCopy-->
    
  2. Utilisez les touches fléchées pour sélectionner Services réseau dans le menu de gauche. Onglet dans le menu de droite et utilisez les touches fléchées pour sélectionner Administration à distance. Presser Entrer.

  3. Dans le Administration à distance écran Onglet à l Paramètres d’administration à distance section. Utilisez les touches fléchées pour sélectionner Autoriser l’administration à distance et appuyez sur Entrer pour placer un X dans la case à cocher.

  4. Onglet à l Paramètres du pare-feu section. Utilisez les touches fléchées pour sélectionner Ouvrir le port dans le pare-feu et appuyez sur Entrer pour placer un X dans la case à cocher.

  5. Onglet à l Finir bouton et appuyez sur Entrer.

  6. Un message s’affiche, vous demandant de redémarrer le gestionnaire d’affichage pour que vos paramètres prennent effet. Presser Entrer pour accuser réception du message.

  7. Le menu de niveau supérieur d’origine de YaST apparaît. Onglet à l Démissionner bouton et appuyez sur Entrer.

Modifier la configuration xinetd

Après avoir activé l’administration à distance, modifiez un fichier de configuration si vous souhaitez autoriser XenCenter à se connecter. Vous pouvez également utiliser un client VNC tiers.

  1. Ouvrez le fichier /etc/xinetd.d/vnc dans votre éditeur de texte préféré.

  2. Le fichier contient des sections comme celles-ci :

          service vnc1
          {
          socket_type = stream
          protocol    = tcp
          wait        = no
          user        = nobody
          server      = /usr/X11R6/bin/Xvnc
          server_args = :42 -inetd -once -query localhost -geometry 1024x768 -depth 16
          type        = UNLISTED
          port        = 5901
          }
    <!--NeedCopy-->
    
  3. Modifiez la ligne du port pour lire

      port = 5900
    <!--NeedCopy-->
    
  4. Enregistrez, puis fermez le fichier.

  5. Redémarrez le gestionnaire d’affichage et le service xinetd avec les commandes suivantes :

      /etc/init.d/xinetd restart
      rcxdm restart
    <!--NeedCopy-->
    

SUSE Linux utilise le niveau d’exécution 5 pour le démarrage graphique. Si votre poste de travail distant n’apparaît pas, vérifiez que votre machine virtuelle est configurée pour démarrer au niveau d’exécution 5. Pour plus d’informations, consultez Vérifier les niveaux de course.

Paramètres du pare-feu

Par défaut, la configuration du pare-feu n’autorise pas le trafic VNC. Si vous disposez d’un pare-feu entre la machine virtuelle et XenCenter, autorisez le trafic sur le port utilisé par la connexion VNC. Par défaut, un serveur VNC écoute les connexions d’un visualiseur VNC sur le port TCP 5900 + n, où n est le numéro d’affichage (généralement zéro). Ainsi, un serveur VNC configuré pour Display-0 écoute sur le port TCP 5900, Display-1 est TCP-5901, et ainsi de suite. Consultez la documentation de votre pare-feu pour vous assurer que ces ports sont ouverts.

Si vous souhaitez utiliser le suivi des connexions IP ou limiter l’initiation des connexions à un seul côté, configurez davantage votre pare-feu.

Pour ouvrir le port VNC sur le pare-feu des machines virtuelles SLES 11.x :

  1. Ouvrez une console texte sur la machine virtuelle et exécutez l’utilitaire YaST :

      yast
    <!--NeedCopy-->
    
  2. Utilisez les touches fléchées pour sélectionner Sécurité et utilisateurs dans le menu de gauche. Onglet dans le menu de droite et utilisez les touches fléchées pour sélectionner Pare-feu. Presser Entrer.

  3. Dans le Pare-feu écran, utilisez les touches fléchées pour sélectionner Règles personnalisées dans le menu de gauche, puis appuyez sur Entrer.

  4. Onglet à l Ajouter dans le Règles autorisées personnalisées section, puis appuyez sur Entrer.

  5. Dans le Réseau source champ, entrez 0/0. Onglet à l Destination Port et entrez 5900.

  6. Onglet à l Ajouter bouton, puis appuyez sur Entrer.

  7. Onglet à l Prochain bouton et appuyez sur Entrer.

  8. Dans le Résumé écran Onglet à l Finir bouton et appuyez sur Entrer.

  9. Sur l’écran de niveau supérieur YaST Tab jusqu’au bouton Quitter et appuyez sur Entrée.

  10. Redémarrez le gestionnaire d’affichage et le service xinetd avec les commandes suivantes :

      /etc/init.d/xinetd restart
      rcxdm restart
    <!--NeedCopy-->
    

Alternativement, vous pouvez désactiver le pare-feu jusqu’au prochain redémarrage en exécutant la commande rcSuSEfirewall2 stop , ou de manière permanente en utilisant YaST. Cette configuration peut exposer des services supplémentaires au monde extérieur et réduire la sécurité globale de votre machine virtuelle.

Résolution de l’écran VNC

Après la connexion à une machine virtuelle avec la console graphique, la résolution de l’écran ne correspond parfois pas. Par exemple, l’affichage de la machine virtuelle est trop grand pour s’adapter confortablement au volet de la console graphique. Contrôlez ce comportement en définissant le paramètre geometry du serveur VNC comme suit :

  1. Ouvrez le fichier /etc/xinetd.d/vnc avec votre éditeur de texte préféré et recherchez la section service_vnc1 (correspondant à displayID 1).

  2. Modifiez l’argument geometry dans la ligne server-args à la résolution d’affichage souhaitée. Par exemple,

      server_args  = :42 -inetd -once -query localhost -geometry 800x600 -depth 16
    <!--NeedCopy-->
    

    La valeur du paramètre géométrie peut être n’importe quelle largeur et hauteur d’écran valide.

  3. Enregistrez, puis fermez le fichier.

  4. Redémarrez le serveur VNC :

      /etc/init.d/xinetd restart
      rcxdm restart
    <!--NeedCopy-->
    

Vérifier les niveaux de course

Les machines virtuelles Linux Red Hat et SUSE utilisent le niveau d’exécution 5 pour le démarrage graphique. Cette section décrit comment vérifier que votre machine virtuelle démarre au niveau d’exécution 5 et comment modifier ce paramètre.

  1. Vérifiez /etc/inittab pour voir quel est le niveau d’exécution par défaut. Recherchez la ligne qui dit :

      id:n:initdefault:
    <!--NeedCopy-->
    

    Si n n’est pas 5, modifiez le fichier pour qu’il en soit ainsi.

  2. Vous pouvez exécuter la commande telinit q ; telinit 5 après cette modification pour éviter d’avoir à redémarrer pour changer de niveau d’exécution.

Activer VNC pour les machines virtuelles Linux