Citrix Hypervisor

Habilitación de VNC para máquinas virtuales Linux

Importante:

La actualización acumulativa 1 de Citrix Hypervisor 8.2 llega al final de su vida útil el 25 de junio de 2025. Planifique su actualización a XenServer 8 ahora para garantizar una transición fluida y un soporte continuo. Para obtener más información, consulte Actualizar.

Si utiliza los archivos de licencia de Citrix Virtual Apps and Desktops para licenciar los hosts de Citrix Hypervisor 8.2 Cumulative Update 1, estos archivos de licencia no son compatibles con XenServer 8. Antes de actualizar, debe adquirir los archivos de licencia de socket de XenServer Premium Edition para utilizarlos con XenServer 8. Estos archivos de licencia de socket están disponibles como un derecho de las suscripciones de Citrix para Private Cloud, Citrix Universal Hybrid Multi-Cloud, Citrix Universal MSP y Citrix Platform License para ejecutar sus cargas de trabajo de Citrix. Los clientes de Citrix que aún no hayan realizado la transición a estas nuevas suscripciones pueden solicitar participar en una promoción gratuita de 10.000 licencias de socket de XenServer Premium Edition. Para obtener más información, consulte XenServer.

Si no obtiene una licencia compatible para XenServer 8 antes de actualizar, cuando actualice sus hosts, estos volverán a la edición de prueba de 90 días. La Edición de Prueba ofrece las mismas características que la Edición Premium con algunas limitaciones. Para obtener más información, consulte Descripción general de las licencias de XenServer 8.

Es posible que las máquinas virtuales no estén configuradas para admitir Virtual Network Computing (VNC), que Citrix Hypervisor utiliza para controlar las máquinas virtuales de forma remota, de forma predeterminada. Antes de poder conectarse con XenCenter, asegúrese de que el servidor VNC y un administrador de pantalla X estén instalados en la máquina virtual y configurados correctamente. En esta sección se describe cómo configurar VNC en cada una de las distribuciones del sistema operativo Linux compatibles para permitir interacciones adecuadas con XenCenter.

En el caso de las máquinas virtuales basadas en CentOS, siga las instrucciones para las máquinas virtuales basadas en Red Hat que se indican a continuación, ya que utilizan el mismo código base para proporcionar acceso gráfico a VNC. Centos X está basado en Red Hat Enterprise Linux X.

Habilitación de una consola gráfica en máquinas virtuales Debian

Nota: No

Antes de habilitar una consola gráfica en su máquina virtual Debian, asegúrese de haber instalado Citrix VM Tools para Linux. Para obtener más información, consulte Instalar Citrix VM Tools para Linux.

La consola gráfica para las máquinas virtuales Debian es proporcionada por un servidor VNC que se ejecuta dentro de la VM. En la configuración recomendada, un administrador de pantalla estándar controla la consola para que se proporcione un cuadro de diálogo de inicio de sesión.

  1. Instale su huésped Debian con los paquetes del sistema de escritorio, o instale GDM (el administrador de pantalla) usando apt (siguiendo los procedimientos estándar).

  2. Instale el servidor Xvnc usando apt-get (o similar):

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

    Nota: No

    El Entorno de Escritorio Gráfico de Debian, que utiliza el demonio Gnome Display Manager versión 3, puede tardar mucho tiempo de CPU. Desinstale el paquete Gnome Display Manager gdm3 e instale el paquete gdm de la siguiente manera:

          apt-get install gdm
          apt-get purge gdm3
    <!--NeedCopy-->
    
  3. Configure una contraseña VNC (no tener una es un riesgo de seguridad grave) usando el comando vncpasswd . Pase un nombre de archivo para escribir la información de la contraseña. Por ejemplo:

      vncpasswd /etc/vncpass
    <!--NeedCopy-->
    
  4. Modifique su archivo gdm.conf (/etc/gdm/gdm.conf) para configurar un servidor VNC para administrar la pantalla 0 extendiendo las secciones [servidores] y [daemon] de la siguiente manera:

          [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. Reinicie GDM y, a continuación, espere a que XenCenter detecte la consola gráfica:

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

Nota: No

Puede comprobar que el servidor VNC se está ejecutando usando un comando como ps ax | grep vnc.

Habilitación de una consola gráfica en máquinas virtuales Red Hat, CentOS u Oracle Linux

Nota: No

Antes de configurar las máquinas virtuales de Red Hat para VNC, asegúrese de haber instalado Citrix VM Tools para Linux. Para obtener más información, consulte Instalar Citrix VM Tools para Linux.

Para configurar VNC en máquinas virtuales de Red Hat, modifique la configuración de GDM. La configuración de GDM se mantiene en un archivo cuya ubicación varía en función de la versión de Red Hat Linux que esté utilizando. Antes de modificarlo, primero determine la ubicación de este archivo de configuración. Este archivo se modifica en varios procedimientos posteriores en esta sección.

Determine la ubicación del archivo de configuración de VNC

Si está utilizando Red Hat Linux, el archivo de configuración de GDM es /etc/gdm/custom.conf. Este archivo es un archivo de configuración dividida que contiene solo valores especificados por el usuario que anulan la configuración predeterminada. Este tipo de archivo se utiliza de forma predeterminada en las versiones más recientes de GDM. Está incluido en estas versiones de Red Hat Linux.

Configurar GDM para usar VNC

  1. Como root en la CLI de texto en la VM, ejecute el comando rpm -q vnc-server gdm. Aparecen los nombres de los paquetes vnc-server y gdm , con sus números de versión especificados.

    Los nombres de los paquetes que se muestran muestran los paquetes que ya están instalados. Si ve un mensaje que dice que un paquete no está instalado, es posible que no haya seleccionado las opciones de escritorio gráfico durante la instalación. Instale estos paquetes antes de poder continuar. Para obtener más información sobre la instalación de más software en la máquina virtual, consulte la Guía de instalación de Red Hat Linux x86 correspondiente.

  2. Abra el archivo de configuración de GDM con su editor de texto preferido y agregue las siguientes líneas al archivo:

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

    Con archivos de configuración en Red Hat Linux, agregue estas líneas en la sección vacía [servidores] .

  3. Modifique la configuración para que se utilice el servidor Xvnc en lugar del servidor X estándar:

    • 0=Standard

      Modifíquelo para que diga:

      0=VNC

    • Si está utilizando Red Hat Linux, agregue la línea anterior justo debajo de la sección [servers] y antes de la sección [server-VNC] .

  4. Guarde el archivo y ciérrelo.

Reinicie GDM para que el cambio en la configuración surta efecto, ejecutando el comando /usr/sbin/gdm-restart.

Nota: No

Red Hat Linux utiliza el nivel de ejecución 5 para el inicio gráfico. Si la instalación se inicia en el nivel de ejecución 3, cambie esta configuración para que se inicie el administrador de pantalla y obtenga acceso a una consola gráfica. Para obtener más información, consulte Comprobar los niveles de ejecución.

Configuración del cortafuegos

La configuración del firewall de forma predeterminada no permite que pase el tráfico VNC. Si tiene un firewall entre la máquina virtual y XenCenter, permita el tráfico a través del puerto que utiliza la conexión VNC. De forma predeterminada, un servidor VNC escucha conexiones de un visor VNC en el puerto TCP 5900 + n, donde n es el número de visualización (normalmente cero). Entonces, una configuración de servidor VNC para Display-0 escucha en el puerto TCP 5900, Display-1 es TCP-5901, y así sucesivamente. Consulte la documentación del firewall para asegurarse de que estos puertos estén abiertos.

Si desea utilizar el seguimiento de conexiones IP o limitar el inicio de las conexiones para que solo provenga de un lado, configure aún más su firewall.

Para configurar el firewall VMS basado en Red Hat para abrir el puerto VNC:

  1. Para Red Hat Linux, utilice system-config-securitylevel-tui.

  2. Seleccione Personalizar y agregue 5900 a la lista de otros puertos.

Alternativamente, puede deshabilitar el firewall hasta el próximo reinicio ejecutando el comando service iptables stop, o de forma permanente ejecutando chkconfig iptables off. Esta configuración puede exponer servicios adicionales al mundo exterior y reducir la seguridad general de la máquina virtual.

Resolución de pantalla VNC

Después de conectarse a una máquina virtual con la consola gráfica, la resolución de la pantalla a veces no coincide. Por ejemplo, la pantalla de la máquina virtual es demasiado grande para caber cómodamente en el panel de la consola gráfica. Controle este comportamiento configurando el parámetro de geometría `` del servidor VNC de la siguiente manera:

  1. Abra el archivo de configuración de GDM con su editor de texto preferido. Para obtener más información, consulte Determine la ubicación de su archivo de configuración VNC.

  2. Encuentra la sección [server-VNC] que agregaste arriba.

  3. Edite la línea de comandos para que diga, por ejemplo:

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

    El valor del parámetro de geometría `` puede ser cualquier ancho y alto de pantalla válidos.

  4. Guarde el archivo y ciérrelo.

Habilitación de VNC para máquinas virtuales RHEL, CentOS u OEL

Si está utilizando Red Hat Linux, el archivo de configuración de GDM es /etc/gdm/custom.conf. Este archivo es un archivo de configuración dividida que contiene solo valores especificados por el usuario que anulan la configuración predeterminada. De forma predeterminada, este tipo de archivo se utiliza en las versiones más recientes de GDM y se incluye en estas versiones de Red Hat Linux.

Durante la instalación del sistema operativo, seleccione Escritorio modo. En la pantalla de instalación de RHEL, seleccione Escritorio > Personaliza ahora y, a continuación, haga clic en Próximo:

Captura de pantalla de la pantalla de instalación de RHEL

Esta acción muestra la pantalla del sistema base, asegúrese de que Compatibilidad con UNIX heredada se selecciona:

Captura de pantalla de la pantalla del sistema base

Escoger Escritorios > Paquetes opcionalesy, a continuación, haga clic en Próximo:

Captura de pantalla de la pantalla de escritorios

Esta acción muestra el Paquetes en escritorio ventana, seleccione tigervnc-servidor-<version_number> y, a continuación, haga clic en Próximo:

Captura de pantalla de los paquetes en la ventana del escritorio

Siga estos pasos para continuar con la configuración de las máquinas virtuales de RHEL:

  1. Abra el archivo de configuración de GDM con su editor de texto preferido y agregue las siguientes líneas a las secciones apropiadas:

          [security]
          DisallowTCP=false
    
          [xdmcp]
          Enable=true
    <!--NeedCopy-->
    
  2. Cree el archivo, /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. Ingrese el siguiente comando para iniciar el servicio xinetd :

      # service xinetd start
    <!--NeedCopy-->
    
  4. Abra el archivo /etc/sysconfig/iptables. Agregue la siguiente línea encima de la línea que dice -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. Introduzca el siguiente comando para reiniciar iptables:

      # service iptables restart
    <!--NeedCopy-->
    
  6. Introduzca el siguiente comando para reiniciar gdm:

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

Nota: No

Red Hat Linux utiliza el nivel de ejecución 5 para el inicio gráfico. Si la instalación se inicia en el nivel de ejecución 3, cambie esta configuración para que se inicie el administrador de pantalla y para obtener acceso a una consola gráfica. Para obtener más información, consulte Comprobación de los niveles de ejecución.

Configuración de máquinas virtuales basadas en SLES para VNC

Nota: No

Antes de configurar las máquinas virtuales de SUSE Linux Enterprise Server para VNC, asegúrese de haber instalado Citrix VM Tools para Linux. Ver Instalar Citrix VM Tools para Linux para obtener más detalles.

SLES tiene soporte para habilitar “Administración remota” como una opción de configuración en YaST. Puede seleccionar habilitar la administración remota en el momento de la instalación, disponible en el Servicios de red del instalador de SLES. Esta función le permite conectar un visor VNC externo a su invitado para que pueda ver la consola gráfica. El método para utilizar la función de administración remota de SLES es ligeramente diferente al método proporcionado por XenCenter. Sin embargo, es posible modificar los archivos de configuración de la máquina virtual de SUSE Linux para que se integre con la función de consola gráfica.

Buscar un servidor VNC

Antes de realizar cambios en la configuración, compruebe que tiene instalado un servidor VNC. SUSE envía el servidor tightvnc de forma predeterminada. Este servidor es un servidor VNC adecuado, pero también puede utilizar la distribución estándar RealVNC.

Puedes comprobar que tienes instalado el software tightvnc ejecutando el comando:

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

Habilitación de la administración remota

Si la administración remota no se habilitó durante la instalación del software SLES, puede habilitarla de la siguiente manera:

  1. Abra una consola de texto en la máquina virtual y ejecute la utilidad YaST :

      yast
    <!--NeedCopy-->
    
  2. Utilice las teclas de flecha para seleccionar Servicios de red en el menú de la izquierda. Pestaña en el menú de la derecha y use las teclas de flecha para seleccionar Administración remota. Prensa Entrar.

  3. En Administración remota pantalla Pestaña al Configuración de administración remota sección. Utilice las teclas de flecha para seleccionar Permitir la administración remota y presione Entrar para colocar una X en la casilla de verificación.

  4. Pestaña al Configuración del cortafuegos sección. Utilice las teclas de flecha para seleccionar Puerto abierto en el firewall y presione Entrar para colocar una X en la casilla de verificación.

  5. Pestaña al Terminar y presione Entrar.

  6. Aparecerá un cuadro de mensaje que le indicará que reinicie el administrador de pantalla para que la configuración surta efecto. Prensa Entrar para reconocer el mensaje.

  7. Aparece el menú de nivel superior original de YaST . Pestaña al Renunciar y presione Entrar.

Modificar la configuración de xinetd

Después de habilitar la administración remota, modifique un archivo de configuración si desea permitir que XenCenter se conecte. Como alternativa, utilice un cliente VNC de terceros.

  1. Abra el archivo /etc/xinetd.d/vnc en su editor de texto preferido.

  2. El archivo contiene secciones como las siguientes:

          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. Edite la línea del puerto `` para leer

      port = 5900
    <!--NeedCopy-->
    
  4. Guarde el archivo y ciérrelo.

  5. Reinicie el administrador de pantalla y el servicio xinetd con los siguientes comandos:

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

SUSE Linux utiliza el nivel de ejecución 5 para el inicio gráfico. Si el escritorio remoto no aparece, compruebe que la máquina virtual esté configurada para iniciarse en el nivel de ejecución 5. Para obtener más información, consulte Comprobar los niveles de ejecución.

Configuración del cortafuegos

De forma predeterminada, la configuración del firewall no permite que pase el tráfico VNC. Si tiene un firewall entre la máquina virtual y XenCenter, permita el tráfico a través del puerto que utiliza la conexión VNC. De forma predeterminada, un servidor VNC escucha conexiones de un visor VNC en el puerto TCP 5900 + n, donde n es el número de visualización (normalmente cero). Entonces, una configuración de servidor VNC para Display-0 escucha en el puerto TCP 5900, Display-1 es TCP-5901, y así sucesivamente. Consulte la documentación del firewall para asegurarse de que estos puertos estén abiertos.

Si desea utilizar el seguimiento de conexiones IP o limitar el inicio de las conexiones para que solo provenga de un lado, configure aún más su firewall.

Para abrir el puerto VNC en el firewall de máquinas virtuales SLES 11.x:

  1. Abra una consola de texto en la máquina virtual y ejecute la utilidad YaST :

      yast
    <!--NeedCopy-->
    
  2. Utilice las teclas de flecha para seleccionar Seguridad y usuarios en el menú de la izquierda. Pestaña en el menú de la derecha y use las teclas de flecha para seleccionar Cortafuegos. Prensa Entrar.

  3. En Cortafuegos pantalla, use las teclas de flecha para seleccionar Reglas personalizadas en el menú de la izquierda y, a continuación, pulse Entrar.

  4. Pestaña al Agregar en el botón Reglas permitidas personalizadas y luego presione Entrar.

  5. En Red de origen campo, introduzca 0/0. Pestaña al Puerto de destino campo e introduzca 5900.

  6. Pestaña al Agregar y, a continuación, pulse Entrar.

  7. Pestaña al Próximo y presione Entrar.

  8. En Resumen pantalla Pestaña al Terminar y presione Entrar.

  9. En la pantalla de nivel superior YaST Tab hasta el botón Salir y presione Enter.

  10. Reinicie el administrador de pantalla y el servicio xinetd con los siguientes comandos:

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

Como alternativa, puede deshabilitar el firewall hasta el próximo reinicio ejecutando el comando rcSuSEfirewall2 stop , o de forma permanente usando YaST. Esta configuración puede exponer servicios adicionales al mundo exterior y reducir la seguridad general de la máquina virtual.

Resolución de pantalla VNC

Después de conectarse a una máquina virtual con la consola gráfica, la resolución de la pantalla a veces no coincide. Por ejemplo, la pantalla de la máquina virtual es demasiado grande para caber cómodamente en el panel de la consola gráfica. Controle este comportamiento configurando el parámetro de geometría `` del servidor VNC de la siguiente manera:

  1. Abra el archivo /etc/xinetd.d/vnc con su editor de texto preferido y busque la sección service_vnc1 (correspondiente a displayID 1).

  2. Edite el argumento geometry en la línea server-args a la resolución de pantalla deseada. Por ejemplo,

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

    El valor del parámetro de geometría `` puede ser cualquier ancho y alto de pantalla válidos.

  3. Guarde el archivo y ciérrelo.

  4. Reinicie el servidor VNC:

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

Comprobación de los niveles de ejecución

Las máquinas virtuales Linux de Red Hat y SUSE utilizan el nivel de ejecución 5 para el inicio gráfico. En esta sección se describe cómo comprobar que la máquina virtual se inicia en el nivel de ejecución 5 y cómo cambiar esta configuración.

  1. Consulte /etc/inittab para ver cuál está configurado el nivel de ejecución predeterminado. Busque la línea que dice:

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

    Si n no es 5, edite el archivo para que así sea.

  2. Puede ejecutar el comando telinit q ; telinit 5 después de este cambio para evitar tener que reiniciar para cambiar los niveles de ejecución.

Habilitación de VNC para máquinas virtuales Linux