Habilitar VNC para VM Linux
Es posible que las máquinas virtuales no estén configuradas para admitir la informática de red virtual (VNC), que se utiliza para controlar las máquinas virtuales de forma remota, de forma predeterminada. Antes de poder conectarse con , asegúrese de que el servidor VNC y un administrador de visualización 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 de sistemas operativos Linux compatibles para permitir interacciones adecuadas con .
Para las máquinas virtuales basadas en CentOS, utilice las instrucciones para las máquinas virtuales basadas en Red Hat que aparecen a continuación, ya que utilizan el mismo código base para proporcionar acceso gráfico de VNC. CentOS X se basa en Red Hat Enterprise Linux X.
Habilitar una consola gráfica en máquinas virtuales de Debian Squeeze
Nota:
Antes de habilitar una consola gráfica en su máquina virtual Debian Squeeze, asegúrese de haber instalado el agente invitado de Linux. Para obtener más información, consulte Instalar el agente huésped de Linux.
La consola gráfica para máquinas virtuales Debian Squeeze es proporcionada por un servidor VNC que se ejecuta dentro de la máquina virtual. En la configuración recomendada, un gestor de visualización estándar controla la consola para que se proporcione un cuadro de diálogo de inicio de sesión.
-
Instale su invitado Squeeze con los paquetes del sistema de escritorio o instale GDM (el gestor de pantalla) utilizando apt (siguiendo los procedimientos estándar).
-
Instale el servidor Xvnc usando
apt-get
(o similar):apt-get install vnc4server
Nota:
El entorno gráfico de escritorio Debian Squeeze, que utiliza el daemon Gnome Display Manager versión 3, puede tardar mucho tiempo de CPU. aconseja encarecidamente que los clientes desinstalen el
gdm3
paquete Gnome Display Manager e instalen elgdm
paquete de la siguiente manera:apt-get install gdm apt-get purge gdm3
-
Configure una contraseña VNC (no tener una es un grave riesgo para la seguridad) mediante el
vncpasswd
comando. Pase un nombre de archivo para escribir la información de la contraseña. Por ejemplo:vncpasswd /etc/vncpass
-
Modifiquegdm.conf
el archivo (/etc/gdm/gdm.conf
) para configurar un servidor VNC para administrar la visualización exten0
diendo[servers]
el [daemon]secciones de la siguiente manera:
[servidores] 0=VNC [demonio] vtalLocation = false [Server-VNC] nombre = VNC command = / usr/bin/xvnc -geometry 800x600 -PasswordFile /etc/vncpass BlackListTimeout = 0 flexible = verdadero
-
Reinicie GDM y espere a detectar la consola gráfica:
/etc/init.d/gdm reinicio
Nota:
Puede comprobar que el servidor VNC se está ejecutando utilizando un comando como
ps ax | grep vnc
.
Habilitar una consola gráfica en máquinas virtuales Red Hat, CentOS u Oracle Linux
Nota:
Configuración de VNC para máquinas virtuales de Red Hat Antes de configurar las máquinas virtuales de Red Hat para VNC, asegúrese de haber instalado el agente invitado de Linux. Para obtener más información, consulte Instalar el agente huésped de 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 según la versión de Red Hat Linux que esté utilizando. Antes de modificarlo, determine primero la ubicación de este archivo de configuración. Este archivo se modifica en varios procedimientos posteriores en esta sección.
Nota:
Para obtener información sobre cómo habilitar VNC para máquinas virtuales RHEL, CentOS u OEL 6.x, consulte Habilitar VNC para máquinas virtuales RHEL, CentOS u OEL 6.
Determinar la ubicación del archivo de configuración de VNC
Si está utilizando Red Hat Linux versión 5.x, el archivo de configuración de GDM es/etc/gdm/custom.conf
. Este archivo es un archivo de configuración dividido que contiene sólo los 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
-
Como root en la CLI de texto en la VM, ejecute el comando
rpm -q vnc-server gdm
. Los nombres de los paquetesvnc-server
ygdm
aparecen, con sus números de versión especificados.Los nombres de paquetes que se muestran muestran los paquetes que ya están instalados. Si aparece un mensaje que indica 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 su máquina virtual, consulte la Guía de instalación adecuada de Red Hat Linux x86.
-
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 = Servidor VNC command = / usr/bin/XVNC -securityTypes Ninguno -geometría 1024x768 -profundidad 16 \ -BlackListTimeout 0 flexible = verdadero
Con los archivos de configuración en Red Hat Linux 5.x, agregue estas líneas a la
[servers]
sección vacía. -
Modifique la configuración para que se utilice el
Xvnc
servidor en lugar del servidor X estándar:-
0=Standard
Modifíquelo para que diga:
0=VNC
-
Si está utilizando Red Hat Linux 5.x o superior, agregue la línea anterior justo debajo de la
[servers]
sección y antes de la[server-VNC]
sección.
-
-
Guarde y cierre el archivo.
Reinicie GDM para que su cambio en la configuración surta efecto, ejecutando el comando/usr/sbin/gdm-restart
.
Nota:
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 gestor de visualización y obtenga acceso a una consola gráfica. Para obtener más información, consulte Comprobar 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 , permita el tráfico a través del puerto que utiliza la conexión VNC. De forma predeterminada, un servidor VNC escucha las conexiones de un visor VNC en el puerto TCP5900 + n
, donden
es el número de visualización (generalmente cero). Por lo tanto, una configuración de servidor VNC para Display-0 escucha en el puerto TCP5900
, Display-1 esTCP-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 conexiones para que sean sólo de un lado, configure aún más su firewall.
Para configurar el firewall VMS de base Red Hat para abrir el puerto VNC:
-
Para Red Hat Linux 5.x, use
system-config-securitylevel-tui
. -
Seleccione Personalizar y agregar
5900
a la lista de otros puertos.
Alternativamente, puede deshabilitar el firewall hasta el siguiente reinicio ejecutando el comandoservice iptables stop
, o de forma permanente ejecutandochkconfig iptables off
. Esta configuración puede exponer servicios adicionales al mundo exterior y reducir la seguridad general de su 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 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 estableciendo elgeometry
parámetro del servidor VNC de la siguiente manera:
-
Abra el archivo de configuración de GDM con su editor de texto preferido. Para obtener más información, vea Determinar la ubicación del archivo de configuración de VNC.
-
Encuentra la
[server-VNC]
sección que has añadido arriba. -
Edite la línea de comandos para leer, por ejemplo:
command = / usr/bin/XVNC -securityTypes Ninguno -geometría 800x600
El valor del
geometry
parámetro puede ser cualquier ancho y alto de pantalla válidos. -
Guarde y cierre el archivo.
Habilitar VNC para máquinas virtuales RHEL, CentOS u OEL 6
Si está utilizando Red Hat Linux versión 6.x, el archivo de configuración de GDM es/etc/gdm/custom.conf
. Este archivo es un archivo de configuración dividido que contiene sólo los 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 Modo de escritorio . En la pantalla de instalación de RHEL, seleccione Escritorio > Personalizar ahora y, a continuación, haga clic en Siguiente :
Esta acción muestra la pantalla Sistema base, asegúrese de que esté seleccionada la compatibilidad con UNIX heredada :
Seleccione Escritorios > Paquetes opcionales y, a continuación, haga clic en Siguiente :
Esta acción muestra la ventana Paquetes en el escritorio, seleccione tigervnc-server- < version_number > y, a continuación, haga clic en Siguiente:****
Siga los pasos siguientes para continuar con la configuración de las máquinas virtuales RHEL 6.x:
-
Abra el archivo de configuración de GDM con su editor de texto preferido y añada las siguientes líneas a las secciones correspondientes:
[seguridad] DisallowTCP = false [xdmcp] Habilitar = true
-
Cree el archivo,
/etc/xinetd.d/vnc-server-stream
:servicio vnc-server { id = vnc-server desactivar = no type = UNListed puerto = 5900 socket_type = flujo esperar = no usuario = nadie grupo = tty servidor = /usr/bin/XVNC server_args = -inetd -once -query localhost -securityTypes Ninguno \ -geometría 800x600 -profundidad 16 }
-
Introduzca el siguiente comando para iniciar el
xinetd
servicio:# servicio xinetd inicio
-
Abra el archivo
/etc/sysconfig/iptables
. Agregue la siguiente línea encima de la línea de lectura,-A INPUT -j REJECT --reject-with icmp-host-prohibited
:-A INPUT -m estado — estado NUEVO -m tcp -p tcp — dport 5900 -j ACEPTAR
-
Introduzca el siguiente comando para reiniciar
iptables
:# service iptables restart
-
Introduzca el siguiente comando para reiniciar
gdm
:# telinit 3 # telinit 5
Nota:
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 gestor de visualización y obtenga acceso a una consola gráfica. Para obtener más información, vea Comprobar niveles de ejecución.
Configuración de máquinas virtuales basadas en Sles para VNC
Nota:
Antes de configurar las máquinas virtuales de SUSE Linux Enterprise Server para VNC, asegúrese de haber instalado el agente invitado de Linux. Consulte Instalar el agente huésped de Linuxpara obtener más información.
SLES tiene soporte para habilitar “Administración remota” como opción de configuración enYaST
. Puede seleccionar habilitar Administración remota en el momento de la instalación, disponible en la pantalla 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 del método proporcionado por . Sin embargo, es posible modificar los archivos de configuración de su máquina virtual SUSE Linux de modo que se integre con la función de consola gráfica.
Comprobar si hay un servidor VNC
Antes de realizar cambios en la configuración, compruebe que tiene instalado un servidor VNC. SUSE envía eltightvnc
servidor de forma predeterminada. Este servidor es un servidor VNC adecuado, pero también puede utilizar la distribución RealVNC estándar.
Puede comprobar que tiene instalado eltightvnc
software ejecutando el comando:
rpm -q tightvnc
Habilitar administración remota
Si la Administración remota no se habilitó durante la instalación del software SLES, puede habilitarla de la siguiente manera:
-
Abra una consola de texto en la máquina virtual y ejecute la
YaST
utilidad:Yast
-
Use as teclas de seta para selecionar Serviços de rede no menu esquerdo. Pestaña en el menú de la derecha y use las teclas de flecha para seleccionar Administración remota . Pulse Intro.
-
En la pantalla Administración remota , vaya a la sección Configuración de administración remota . Utilice las teclas de dirección para seleccionar Permitir administración remota y presione Entrar para colocar una X en la casilla de verificación.
-
en la sección Configuración del cortafuegos . Utilice las teclas de flecha para seleccionar Abrir puerto en Firewall y presione Entrar para colocar una X en la casilla de verificación.
-
Haga clic en el botón Finalizar y presione Entrar .
-
Aparece un cuadro de mensaje que le indica que reinicie el administrador de visualización para que su configuración surta efecto. Pulse Intro para confirmar el mensaje.
-
YaST`` Aparece el menú de nivel superior original de. Haga clic en el botón Salir y presione Entrar .
Modificar la configuración xinetd
Después de habilitar Administración remota, modifique un archivo de configuración si desea permitir la conexión. Alternativamente, utilice un cliente VNC de terceros.
-
Abra el archivo
/etc/xinetd.d/vnc
en su editor de texto preferido. -
El archivo contiene secciones como las siguientes:
servicio vnc1 { socket_type = flujo protocolo = tcp esperar = no usuario = nadie servidor = /usr/x11R6/bin/XVNC server_args =: 42 -inetd -once -query localhost -geometry 1024x768 -depth 16 type = UNListed puerto = 5901 }
-
Editar la
port
línea para leerpuerto = 5900
-
Guarde y cierre el archivo.
-
Reinicie el gestor de visualización y el
xinetd
servicio con los siguientes comandos:/etc/init.d/xinetd reinicio reinicio de rcxdm
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 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 , permita el tráfico a través del puerto que utiliza la conexión VNC. De forma predeterminada, un servidor VNC escucha las conexiones de un visor VNC en el puerto TCP5900 + n
, donden
es el número de visualización (generalmente cero). Por lo tanto, una configuración de servidor VNC para Display-0 escucha en el puerto TCP5900
, Display-1 esTCP-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 conexiones para que sean sólo de un lado, configure aún más su firewall.
Para abrir el puerto VNC en SLES 11.x VM Firewall:
-
Abra una consola de texto en la máquina virtual y ejecute la
YaST
utilidad:Yast
-
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 Firewall . Pulse Intro.
-
En la pantalla Firewall , utilice las teclas de flecha para seleccionar Reglas personalizadas en el menú de la izquierda y, a continuación, presione Entrar .
-
Ficha en el botón Agregar de la sección Reglas permitidas personalizadas y, a continuación, presione Entrar .
-
En el campo Red de origen , escriba 0/0 . En el campo Puerto de destino , escriba 5900 .
-
Tabulador para el botón Agregar y, a continuación, presione Entrar .
-
Haga clic en el botón Siguiente y presione Entrar .
-
En la pestaña de la pantalla Resumen al botón Finalizar y presione Entrar .
-
En la
YaST
pantalla de nivel superior ficha al botón Salir y presione Entrar . -
Reinicie el gestor de visualización y el
xinetd
servicio con los siguientes comandos:/etc/init.d/xinetd reinicio reinicio de rcxdm
Como alternativa, puede deshabilitar el firewall hasta el siguiente reinicio ejecutando el comando stop RCSUseFirewall2 o permanentemente utilizandoYaST
. Esta configuración puede exponer servicios adicionales al mundo exterior y reducir la seguridad general de su 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 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 estableciendo elgeometry
parámetro del servidor VNC de la siguiente manera:
-
Abra el
/etc/xinetd.d/vnc
archivo con su editor de texto preferido y busque laservice_vnc1
sección (correspondiente adisplayID
1). -
Edite el
geometry
argumento de laserver-args
línea a la resolución de visualización deseada. Por ejemplo,server_args =: 42 -inetd -once -query localhost -geometry 800x600 -depth 16
El valor del
geometry
parámetro puede ser cualquier ancho y alto de pantalla válidos. -
Guarde y cierre el archivo.
-
Reinicie el servidor VNC:
/etc/init.d/xinetd reinicio reinicio de rcxdm
Comprobar niveles de ejecución
Las máquinas virtuales Red Hat y SUSE Linux 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.
-
Compruebe
/etc/inittab
para ver en qué se establece el nivel de ejecución predeterminado. Busque la línea que dice:id: n: initdefault:
Si n no es 5, edite el archivo para hacerlo así.
-
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.