Cómo Configurar VNC Server en CentOS: Guía Completa Paso a Paso

0
Cómo Configurar VNC Server en CentOS: Guía Completa Paso a Paso

En ocasiones necesitamos monitorear un servidor en formato gráfico o simplemente acceder remotamente a sus funcionalidades visuales, para ello vamos a configurar VNC Server en CentOS.


Configurar un servidor VNC en CentOS 7 permite obtener acceso remoto al escritorio de su servidor en la red, facilitando su administración. El Protocolo de Computación Virtual en Red (VNC) es una herramienta esencial que permite el control remoto de sistemas a través de una conexión gráfica. Este es un proceso que puede optimizar la administración de sus servidores remotos.


Este artículo le guiará paso a paso en la instalación y configuración de VNC Server en CentOS 7.



Pre-requisitos

Antes de comenzar, asegúrese de tener:


  • Un servidor con CentOS 7.
  • Acceso a una cuenta con privilegios sudo.
  • Conexión a internet.

Actualizar el sistema operativo CentOS

Cuando estemos trabajando en el ambiente de producción debemos siempre considerar tener actualizado nuestro sistema operativo, salvo alguna política administrativa que nos lo impida. La actualización la hacemos con el comando:


# sudo yum -y update


Instalación de GNOME Desktop

Debemos instalar un entorno de escritorio gráfico, ya que VNC Server requiere uno para funcionar. GNOME es una opción popular y estable en entornos CentOS.


Si ya tiene instalado GNOME en su servidor puede saltar este paso sino para instalar GNOME Desktop, ejecute:


# sudo yum -y groupinstall "GNOME Desktop"


Instalación de VNC Server

Instalamos el paquete para el servidor VNC con usuario root o sudoer, el nombre del paquete es tigervnc-server


# sudo yum -y install tigervnc-server


Creación de usuario para VNC

Luego de haber finalizado la instalación del paquete, agregamos el usuario para la autenticación del protocolo VNC. Los usuarios que vamos a crear tendrán una identificación por número ordinal cuando lo configuramos empezando por 1 ... luego 2 ... después 3 ... y así sucesivamente en la configuración.


En mi servidor ya existe el usuario de sistema operativo juanleon. Entonces, para crear el usuario VNC ... copiamos el archivo.


# cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service


Editamos el archivo, cambiando las 2 entradas de <USER> por juanleon (en mi caso).


# vi /etc/systemd/system/vncserver@:1.service


Establecer contraseña del usuario

Nos autenticamos con el usuario del sistema operativo, en mi caso juanleon y generamos una contraseña para VNC con el comando:


$ vncpasswd


Después de ingresar la contraseña y la verificación, nos pregunta si la contraseña es view-only, respondemos con la letra n

Configuración del Entorno de Escritorio


Si ya tiene configurado GNOME en su servidor no es necesario este paso. Para que el entorno gráfico GNOME se inicie correctamente con VNC, es necesario configurar el archivo ~/.vnc/xstartup del usuario:


$ nano ~/.vnc/xstartup


Edite el archivo para que contenga lo siguiente:


#!/bin/bash

unset SESSION_MANAGER

unset DBUS_SESSION_BUS_ADDRESS

exec /usr/bin/gnome-session &


Después, asegúrese de que el archivo tenga los permisos adecuados:


$ chmod +x ~/.vnc/xstartup


Configurar arranque al inicio

Para establecer la configuración del servicio vncserver con usuario root, ejecute:


# sudo systemctl daemon-reload

# sudo systemctl enable vncserver@:1


Iniciar servicio VNC

Para iniciar el servicio:


# sudo systemctl start vncserver@:1


Adicionar regla en el firewall

El protocolo VNC escucha en el puerto 5900, en nuestra creación de usuario teníamos un orden para cada usuario en mi caso sería 1:juanleon ... entonces el puerto que me corresponde es 5901. Agregamos la regla para habilitar el puerto en el firewall.


# firewall-cmd --add-port=5901/tcp
# firewall-cmd --add-port=5901/tcp –-permanent
# firewall-cmd --reload

Finalizar la instalación

Ahora nos podemos conectar con un cliente VNC. Si queremos conectarnos desde otro servidor CentOS usamos la utilidad "/Aplicaciones /Utilidades /Visor de Escritorio Remoto". Recordar que el puerto a usar es 5901. Para cualquier otro sistema operativo pueden usar el software Real VNC Connect.


Conexión al VNC Server

Para conectarse al VNC Server, utilice un cliente VNC e ingrese la dirección IP del servidor seguido de `:1`.


Solución de problemas comunes

Si encuentra problemas al conectar, aquí se presenta una lista de posibles soluciones a errores comunes que pueden surgir durante la instalación de un servidor VNC en CentOS.


Error: "Cannot connect to VNC server": Asegúrese de que el servicio VNC esté en ejecución. Verifique el estado del servicio con el comando `sudo systemctl status vncserver@:1.service`. Si el servicio no está activo, intente reiniciarlo con `sudo systemctl restart vncserver@:1.service`.


Error: "Failed to start session for user": Esto puede deberse a una configuración incorrecta en el archivo `~/.vnc/xstartup`. Asegúrese de que el archivo contenga las líneas correctas para iniciar el entorno de escritorio, como se indicó en la guía. También verifique los permisos del archivo usando `chmod +x ~/.vnc/xstartup`.


Error: "Connection refused by host": Verifique que el puerto en el que está corriendo el VNC Server (por ejemplo, 5901 para `:1`) esté abierto en el firewall. Puede abrir el puerto usando el comando `sudo firewall-cmd --permanent --add-port=5901/tcp` y luego recargar el firewall con `sudo firewall-cmd --reload`.


Pantalla negra al conectar al VNC Server: Este problema suele estar relacionado con la falta de configuración adecuada del entorno de escritorio. Verifique nuevamente el archivo `~/.vnc/xstartup` y asegúrese de que GNOME o el entorno que esté usando esté correctamente configurado para iniciar.


Error: "VNC server is already running as process": Esto ocurre cuando intenta iniciar un VNC Server en un puerto que ya está en uso. Puede detener la instancia existente con `vncserver -kill :1` y luego reiniciar el servicio.


Error de autenticación al intentar conectar: Asegúrese de haber establecido correctamente la contraseña de VNC usando `vncpasswd`. Si sigue teniendo problemas, puede intentar eliminar el archivo `~/.vnc/passwd` y volver a crear la contraseña.


Error: "vncserver: command not found": Este error indica que el paquete `tigervnc-server` no está instalado. Asegúrese de instalarlo con el comando `sudo yum install tigervnc-server -y`.


Desincronización de pantalla o lag en la conexión: Esto puede deberse a una configuración inadecuada del tamaño de pantalla o a un ancho de banda limitado. Puede ajustar la resolución de la pantalla en el archivo `~/.vnc/xstartup` o considerar usar una conexión más rápida o menos concurrida.


Error en la instalación del entorno gráfico: Si GNOME no se instala correctamente, verifique que su sistema esté completamente actualizado antes de intentar la instalación nuevamente. Utilice `sudo yum update` para actualizar el sistema y luego intente instalar GNOME con `sudo yum groupinstall "GNOME Desktop" -y`.


Problemas con SELinux bloqueando la conexión: Si SELinux está configurado para bloquear ciertas conexiones, puede intentar desactivarlo temporalmente con `sudo setenforce 0`. Sin embargo, para una solución más segura, configure las políticas SELinux adecuadas para permitir la ejecución del VNC Server.


Conclusión

La configuración de VNC Server en CentOS 7 es un proceso fundamental para acceder remotamente a servidores con una interfaz gráfica. Siguiendo los pasos detallados en este artículo, desde la instalación del paquete TigerVNC hasta la configuración del firewall, puedes establecer una conexión VNC segura y eficiente. Esto permite una gestión más cómoda y visual de los recursos del servidor, facilitando tareas administrativas y de monitoreo.


Tal vez te interesen estas entradas

No hay comentarios