Entre las distribuciones de Linux más populares, Ubuntu se utiliza en diversos contextos, como desarrollo o servidores. Normalmente, los servidores Ubuntu se administran mediante la línea de comandos, pero en muchos casos es necesario contar con una interfaz gráfica de usuario (GUI). Aquí entra en juego la tecnología VNC (Virtual Network Computing). Con VNC es posible conectarse a una máquina Ubuntu de manera remota a través de la red y trabajar como si se estuviera usando el escritorio local. Esto reduce la necesidad de comandos complejos y facilita el uso tanto a principiantes en Linux como a usuarios de Windows.
La necesidad de un entorno de escritorio remoto
En los últimos años, con la expansión del teletrabajo, la demanda de instalar VNC en Ubuntu para crear un entorno de escritorio remoto ha aumentado considerablemente. En particular, habilitar la GUI en servidores Ubuntu de desarrollo mejora la eficiencia en configuración y mantenimiento. Además, existe la necesidad de gestionar entornos Ubuntu en la nube o VPS con interfaz gráfica, donde VNC cumple un papel fundamental.
Público objetivo y propósito de este artículo
Este artículo está dirigido a las siguientes personas:
Quienes desean instalar VNC en Ubuntu por primera vez
Quienes quieren contar con un entorno GUI porque solo la CLI no les resulta suficiente
Quienes sienten limitaciones al trabajar solo con SSH y prefieren VNC en lugar de RDP
Quienes desean un entorno remoto cómodo que incluya también entrada en japonés
En este artículo explicaremos, de forma clara y paso a paso, cómo instalar un servidor VNC en Ubuntu y conectarse al escritorio de manera remota. También cubriremos aspectos prácticos como la configuración para entrada en japonés y la conexión segura mediante túneles SSH.
2. Requisitos previos y preparación
Qué verificar antes de instalar VNC en Ubuntu
Para instalar y usar un servidor VNC en Ubuntu se requieren algunos requisitos previos y preparativos. En esta sección se resumen los puntos a revisar antes de comenzar.
Versiones de Ubuntu soportadas
Este artículo se centra en Ubuntu 20.04 LTS y Ubuntu 22.04 LTS. Estas versiones siguen siendo ampliamente utilizadas y ofrecen estabilidad con VNC y entornos de entrada en japonés. Si se usan otras versiones, las operaciones básicas son similares, pero algunos nombres de paquetes o comportamientos pueden variar.
Requisitos y configuración del servidor
Como VNC es un método de conexión remota basado en GUI, requiere ciertos recursos (CPU y memoria). Se recomienda la siguiente configuración para instalar VNC en Ubuntu:
CPU: Dual core o superior (mínimo ~1GHz)
Memoria: Al menos 2GB (se recomienda con entornos ligeros como Xfce)
Almacenamiento: Más de 10GB libres
Red: Acceso SSH habilitado y puertos VNC (por defecto 5901) abiertos en el firewall
Permisos y herramientas necesarias
Para instalar y configurar un servidor VNC se necesitan:
Una cuenta de usuario con privilegios sudo
Cliente SSH (PuTTY en Windows, terminal en macOS o Linux)
También es necesario que el servidor Ubuntu tenga SSH habilitado. Si aún no lo tiene, se puede instalar con: sudo apt install openssh-server
Selección del entorno de escritorio a usar
Dado que VNC transfiere la GUI, es necesario un entorno de escritorio en Ubuntu. Sin embargo, GNOME (incluido en Ubuntu Desktop) suele ser demasiado pesado para uso en servidores. Por ello, este artículo recomienda entornos ligeros como Xfce o MATE:
Xfce: Ligero y estable, ideal para principiantes.
MATE: Interfaz clásica, también ligero y confiable.
La selección se tratará en detalle más adelante.
3. Instalación del entorno de escritorio
¿Por qué se necesita un entorno de escritorio?
Al conectarse remotamente a Ubuntu mediante VNC, si no hay un entorno de escritorio instalado, no se mostrará ninguna pantalla. Como VNC está diseñado para manejar interfaces gráficas (GUI), en un sistema que solo tenga CLI (línea de comandos) no es posible aprovechar sus beneficios.
Selección de un entorno de escritorio ligero
El entorno de escritorio ideal para VNC debe ser ligero y estable. Aquí presentamos dos opciones recomendadas:
1. Xfce
Xfce es muy ligero y funciona sin problemas incluso en PC antiguos o VPS. Su diseño sencillo y facilidad de uso lo convierten en un complemento ideal para entornos VNC.
2. MATE
MATE está basado en GNOME 2 y ofrece una interfaz clásica. Aunque consume un poco más de recursos que Xfce, sigue siendo bastante ligero y estable.
El paquete xfce4-goodies incluye herramientas adicionales que mejoran la experiencia de uso.
La instalación puede tardar varios minutos, verifique que no aparezcan errores durante el proceso.
Aunque MATE consume algo más de recursos que Xfce, resulta recomendable para quienes prefieren una apariencia más clásica y rica en detalles.
Atención: no instalar varios entornos al mismo tiempo
No es recomendable instalar simultáneamente varios entornos de escritorio (como Xfce y MATE). Esto complica la configuración al iniciar sesión y puede provocar errores en VNC.
Seleccione solo uno e instálelo.
4. Instalación y configuración del servidor VNC
¿Qué software se necesita en Ubuntu para usar VNC?
VNC (Virtual Network Computing) funciona con dos componentes: el cliente y el servidor. En Ubuntu se debe instalar un servidor VNC, que permitirá las conexiones remotas a la GUI. Existen varias opciones de servidor VNC, pero en este artículo usaremos TigerVNC, que es moderno, rápido y estable:
TigerVNC (recomendado): alto rendimiento y buena compatibilidad con Xfce y MATE.
TightVNC: ligero y apto para sistemas antiguos, aunque su desarrollo está menos activo.
Al ejecutar por primera vez el servidor VNC, deberá establecer una contraseña:
vncserver
Se mostrará algo como:
You will require a password to access your desktops.
Password:
Verify:
Would you like to enter a view-only password (y/n)?
La opción “view-only password” es para acceso de solo lectura. Normalmente basta con responder “n”.
Editar el archivo de configuración (xstartup)
Al iniciar una sesión VNC, se crea el archivo ~/.vnc/xstartup, que define qué entorno de escritorio se lanzará. Ejemplos:
Configuración para Xfce
#!/bin/sh
xrdb $HOME/.Xresources
startxfce4 &
Configuración para MATE
#!/bin/sh
xrdb $HOME/.Xresources
mate-session &
Finalmente, otorgue permisos de ejecución al script:
chmod +x ~/.vnc/xstartup
Iniciar y verificar la sesión VNC
Para iniciar una sesión:
vncserver :1
El número :1 indica el display virtual y corresponde al puerto 5901 (5900 + número).
Detener la sesión
Para detenerla:
vncserver -kill :1
5. Configuración de inicio automático del servidor VNC
¿Por qué configurar el inicio automático de VNC?
Normalmente, el servidor VNC se inicia y detiene manualmente por cada usuario. Sin embargo, ejecutar el comando vncserver cada vez es poco práctico, y si el servidor se reinicia, la sesión VNC no se iniciará automáticamente. Por ello, lo más común es registrar VNC como un servicio en Systemd para que se ejecute automáticamente. De esta forma, siempre se mantiene un entorno de conexión estable.
Creación del archivo de servicio Systemd
Cree un archivo de servicio para cada usuario. Por ejemplo, para usar el display :1:
Si aparece Active: active (running), la configuración fue exitosa.
Atención: servicio por usuario
Este método aplica únicamente a un usuario específico. Si varios usuarios necesitan usar VNC, habrá que crear archivos de servicio adicionales para cada uno.
6. Métodos de conexión desde el cliente
¿Qué es un cliente VNC?
Instalar el servidor VNC en Ubuntu no basta para conectarse. En el ordenador cliente (desde donde se controla) se necesita un visor VNC o cliente VNC.
Clientes VNC recomendados
Algunos de los clientes más utilizados son:
Cliente
Sistemas compatibles
Características
RealVNC Viewer
Windows / Mac / Linux / iOS / Android
Fácil de usar, estable y apto para entornos empresariales
TigerVNC Viewer
Windows / Mac / Linux
Open source y gratuito
UltraVNC
Windows
Muy completo, orientado a usuarios avanzados
Remmina
Solo Linux
Cliente multiprotocolo con GUI
RealVNC Viewer y TigerVNC Viewer son las opciones más seguras y fáciles de usar.
Introduzca la contraseña configurada al iniciar VNC. Si todo es correcto, se mostrará el escritorio de Ubuntu.
Resolución de problemas de conexión
● Puerto bloqueado
Verifique que el firewall o el proveedor de la nube permitan el puerto 5901.
● Conexión mediante túnel SSH
Si no configuró un túnel SSH, es posible que el puerto no esté accesible externamente. Lo explicaremos en el capítulo siguiente.
Conexión desde macOS
Mac también puede usar RealVNC o TigerVNC. El procedimiento es igual: indicar la IP y puerto.
Conexión desde smartphone
Existen aplicaciones de cliente VNC para iOS y Android. Son útiles para accesos rápidos desde tabletas o móviles, aunque menos cómodas que un PC.
7. Configuración de entrada en japonés
¿Por qué es necesaria la entrada en japonés en un entorno VNC?
Aunque ya se pueda acceder remotamente a Ubuntu con VNC, en muchos casos no es posible escribir en japonés de inmediato. Esto genera problemas al redactar blogs, renombrar archivos o usar herramientas de chat. Esto ocurre porque muchas instalaciones de Ubuntu se realizan en inglés y no incluyen soporte de localización japonesa ni un método de entrada (IME). En esta sección explicamos cómo habilitar la entrada en japonés en sesiones VNC.
Tras iniciar sesión en VNC, abra la herramienta de configuración de fcitx (fcitx-config-gtk3) y confirme que “Mozc” está habilitado. Use la tecla 半角/全角 o Ctrl + Espacio para alternar el IME.
Problemas comunes y soluciones
Síntoma
Causa y solución
No inicia el IME
fcitx no se ejecutó o error en variables de entorno.
No se muestran sugerencias de conversión
Mozc no está configurado correctamente en fcitx.
Se necesita iniciar fcitx manualmente
Falta la línea fcitx & en .xstartup.
Con esto, VNC permite usar entrada japonesa de forma fluida. En el siguiente capítulo explicaremos cómo reforzar la seguridad mediante un túnel SSH.
8. Configuración de túnel SSH para mayor seguridad
VNC no cifra la comunicación por defecto
VNC es una herramienta muy práctica para escritorio remoto, pero tiene una gran desventaja: por defecto la comunicación no está cifrada. Esto implica que un tercero malintencionado podría interceptar contraseñas o datos de pantalla. Por eso, al usar VNC a través de Internet se recomienda crear un túnel SSH para cifrar la conexión y garantizar la seguridad.
¿Qué es un túnel SSH?
Un túnel SSH permite redirigir un puerto de manera segura a través de una conexión SSH. En otras palabras, crea un “canal cifrado” entre el cliente y el servidor, protegiendo la comunicación VNC.
Configuración de túnel SSH (port forwarding local)
A continuación se explica cómo configurarlo en diferentes sistemas.
Cliente VNC: al conectarse se debe usar localhost:5901 en lugar de la IP real.
Ventajas de usar túnel SSH
Aspecto
Beneficio
Cifrado
Protege la comunicación VNC con seguridad SSH
Simplificación del firewall
No es necesario abrir puertos VNC hacia Internet
Registro
Los intentos de conexión quedan registrados en logs de SSH
Gracias a SSH, es posible usar VNC de manera segura incluso en servidores expuestos a Internet. Para quienes gestionan servidores públicos, esta configuración es imprescindible.
9. Problemas comunes y soluciones
Problema 1: Pantalla negra o gris después de conectarse
Causas:
Error en el archivo ~/.vnc/xstartup
El entorno de escritorio no se inicia correctamente
Solución:
Verificar que el archivo ~/.vnc/xstartup contenga lo siguiente (ejemplo con Xfce):
#!/bin/sh
xrdb $HOME/.Xresources
startxfce4 &
Dar permisos de ejecución:
chmod +x ~/.vnc/xstartup
Reiniciar la sesión VNC:
vncserver -kill :1
vncserver :1
Problema 2: No se puede escribir en japonés o no aparecen sugerencias
Reiniciar la sesión y verificar en la configuración de fcitx que “Mozc” esté habilitado.
Problema 3: Conexión inestable, retrasos o cortes
Causas:
Ancho de banda insuficiente
Resolución o profundidad de color demasiado alta
Solución:
Reducir resolución y profundidad al iniciar VNC:
vncserver :1 -geometry 1024x768 -depth 16
Usar túnel SSH para mayor estabilidad (ver capítulo 8)
Ajustar parámetros de optimización en el cliente VNC
Problema 4: Se conecta pero no aparece la pantalla de inicio de sesión
Causas:
El gestor de sesiones (ej. GDM) no se inicia en VNC
Solución:
Esto es normal: VNC no muestra el login estándar de Ubuntu, sino el entorno definido en ~/.vnc/xstartup.
Si se necesita un inicio de sesión gráfico para múltiples usuarios, conviene usar RDP (xrdp) en lugar de VNC.
Problema 5: Error al iniciar sesión o acceso denegado
Causas:
Error en el archivo de servicio
Archivos PID en conflicto
Solución:
Detener sesión activa:
vncserver -kill :1
Eliminar archivos sobrantes:
rm ~/.vnc/*.pid
rm ~/.vnc/*.log
Reiniciar VNC:
vncserver :1
Otros consejos
Revisar logs en ~/.vnc/*.log para identificar problemas.
Si varios usuarios usan VNC, iniciar con displays distintos (:2, :3, etc.).
10. Resumen y conclusión
Repaso de los pasos realizados
Requisitos previos: Confirmar versión de Ubuntu, entorno de escritorio y acceso SSH.
Instalación del escritorio: Implementar un entorno ligero como Xfce o MATE.
Configuración de TigerVNC: Instalar y definir resolución, número de sesión y ajustes básicos.
Inicio automático: Registrar el servicio en Systemd para que se inicie tras reinicios del servidor.
Conexión desde el cliente: Usar RealVNC Viewer o TigerVNC Viewer especificando el puerto correcto.
Entrada en japonés: Configurar fcitx-mozc y variables de entorno para habilitar IME.
Túnel SSH: Cifrar la comunicación y evitar riesgos de seguridad.
Resolución de problemas: Soluciones prácticas a errores frecuentes de conexión o configuración.
Para la operación continua
Una vez configurado VNC, podrá usar Ubuntu casi como si estuviera en local. Es ideal para:
Administrar servidores en la nube o VPS con interfaz gráfica.
Compartir un entorno entre miembros de un equipo (usando diferentes números de display).
Facilitar a principiantes el aprendizaje de Linux con GUI.
No obstante, aunque VNC es ligero, no está diseñado para multimedia ni para escenarios con requisitos de alta seguridad. En tales casos conviene considerar alternativas como xrdp o NoMachine.
Conclusión final
Configurar VNC en Ubuntu puede parecer complejo al inicio, pero siguiendo los pasos descritos es totalmente alcanzable incluso para principiantes. Esperamos que esta guía le ayude a implementar un entorno remoto seguro y práctico en Ubuntu. Si tiene dudas, puede dejar comentarios o consultar en redes sociales. ¡Que su experiencia con Ubuntu remoto sea más cómoda y productiva!