Linux

Cómo instalar y configurar VNC en Ubuntu 20.04

Cómo instalar y configurar VNC en Ubuntu 20.04

Virtual Network Computing (VNC) es un sistema gráfico de uso compartido de escritorio que le permite usar su teclado y mouse para controlar otra computadora de forma remota. Es una alternativa de código abierto al protocolo de escritorio remoto de Microsoft (RDP).

Este artículo explica cómo instalar y configurar un servidor VNC en Ubuntu 20.04. También le mostraremos cómo conectarse de forma segura al servidor VNC a través de un túnel SSH.

Instalación del entorno de escritorio #

Los servidores de Ubuntu se administran desde la línea de comandos y no tienen un entorno de escritorio instalado de forma predeterminada. Si ejecuta la versión de escritorio de Ubuntu, omita este paso.

Hay varios entornos de escritorio disponibles en los repositorios de Ubuntu. Una opción es instalar Gnome, que es el entorno de escritorio predeterminado en Ubuntu 20.04. Otra opción es instalar Xfce . Es un entorno de escritorio rápido, estable y ligero, lo que lo hace ideal para su uso en un servidor remoto.

En esta guía, instalaremos Xfce. Ingrese los siguientes comandos como usuario con privilegios de sudo:

actualización de sudo aptsudo apt install xfce4 xfce4-goodies

Dependiendo de su sistema, la descarga e instalación de paquetes Xfce puede llevar algún tiempo.

Instalación del servidor VNC #

Hay varios servidores VNC diferentes disponibles en los repositorios de Ubuntu, como TightVNC, TigerVNC y x11vnc . Cada servidor VNC tiene diferentes fortalezas y debilidades en términos de velocidad y seguridad.

Instalaremos TigerVNC. Es un servidor VNC de alto rendimiento mantenido activamente. Escriba el siguiente comando para instalar el paquete:

sudo apt instalar tigervnc-standalone-server

Configurar el número de acceso de VNC

Una vez que el servidor VNC está instalado, el siguiente paso es crear la configuración de usuario inicial y configurar la contraseña.

Establezca la contraseña de usuario con el vncpasswd mando. No use sudo cuando ejecute el siguiente comando:

vncpasswd

Se le pedirá que ingrese y confirme la contraseña y si desea establecerla como una contraseña de solo lectura. Si elige configurar una contraseña de solo lectura, el usuario no podrá interactuar con la instancia de VNC con el mouse y el teclado.

Contraseña: Verificar: ¿Le gustaría ingresar una contraseña de solo lectura (y / n)?? norte 

El archivo de contraseña se almacena en el ~ /.vnc directorio, que se crea si no está presente.

A continuación, necesitamos configurar TigerVNC para usar Xfce. Para ello, cree el siguiente archivo:

~ /.vnc / xstartup
nano ~ /.vnc / xstartup
#!/ bin / sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec startxfce4 

Guarde y cierre el archivo. Los comandos anteriores se ejecutan automáticamente cada vez que inicia o reinicia el servidor TigerVNC.

La ~ /.vnc / xstartup el archivo también necesita tener permisos de ejecución. Utilizar el chmod comando para establecer los permisos del archivo:

chmod u + x ~ /.vnc / xstartup

Si necesita pasar opciones adicionales al servidor VNC, cree un archivo llamado config y agregue una opción por línea. Aquí hay un ejemplo:

~ /.vnc / config
geometría = 1920x1080 ppp = 96 

Ahora puede iniciar el servidor VNC usando el vncserver mando:

vncserver
Nuevo 'server2.linuxize.com: 1 (linuxize) 'escritorio en: 1 en la máquina server2.linuxize.com Iniciando aplicaciones especificadas en / home / linuxize /.vnc / xstartup El archivo de registro es / home / linuxize /.vnc / server2.linuxize.com: 1.log Utilice xtigervncviewer -SecurityTypes VncAuth -passwd / home / linuxize /.vnc / passwd: 1 para conectarse al servidor VNC. 

Nota la : 1 después del nombre de host en la salida anterior. Esto indica el número del puerto de pantalla en el que se está ejecutando el servidor vnc. En este ejemplo, el servidor se ejecuta en el puerto TCP 5901 (5900 + 1). Si crea una segunda instancia con vncserver se ejecutará en el próximo puerto libre i.mi : 2, lo que significa que el servidor se está ejecutando en el puerto 5902 (5900 + 2).

Lo que es importante recordar es que cuando se trabaja con servidores VNC, :X es un puerto de pantalla que se refiere a 5900 + X.

Puede obtener una lista de todas las sesiones VNC que se están ejecutando actualmente escribiendo:

vncserver -list
Sesiones del servidor TigerVNC: X DISPLAY # RFB PORT # PROCESS ID: 1 5901 5710 

Antes de continuar con el siguiente paso, detenga la instancia de VNC usando el vncserver comando con un -matar opción y el número de servidor como argumento. En este ejemplo, el servidor se ejecuta en el puerto 5901 (: 1), así que lo detendremos con:

vncserver -kill: 1
Eliminando el ID de proceso de Xtigervnc 5710 ... éxito! 

Creando un archivo de unidad Systemd #

En lugar de iniciar manualmente la sesión VNC, creemos un archivo de unidad systemd para que inicie, detenga y reinicie el servicio VNC según sea necesario.

Abra su editor de texto y copie y pegue la siguiente configuración en él. Asegúrese de cambiar el nombre de usuario en la línea 7 para que coincida con su nombre de usuario.

sudo nano / etc / systemd / system / vncserver @.Servicio
/ etc / systemd / system / vncserver @.Servicio
[Unidad] Descripción = Servicio de escritorio remoto (VNC) Después de = syslog.red de destino.destino [Servicio] Tipo = usuario simple = linuxize PAMName = iniciar sesión PIDFile = / home /% u /.vnc /% H% i.pid ExecStartPre = / bin / sh -c '/ usr / bin / vncserver -kill:% i> / dev / null 2> & 1 || : 'ExecStart = / usr / bin / vncserver:% i -geometry 1440x900 -alwaysshared -fg ExecStop = / usr / bin / vncserver -kill:% i [Install] WantedBy = multiusuario.objetivo

Guarde y cierre el archivo.

Notifique a systemd que se crea un nuevo archivo de unidad:

sudo systemctl daemon-reload

Habilite el servicio para que se inicie en el arranque:

sudo systemctl habilitar vncserver @ 1.Servicio

El número 1 después de la @ sign define el puerto de pantalla en el que se ejecutará el servicio VNC. Esto significa que el servidor VNC escuchará en el puerto 5901, como comentamos en la sección anterior.

Inicie el servicio VNC ejecutando:

sudo systemctl iniciar vncserver @ 1.Servicio

Verifique que el servicio se haya iniciado correctamente con:

sudo systemctl status vncserver @ 1.Servicio
● vncserver @ 1.service - Servicio de escritorio remoto (VNC) Cargado: cargado (/ etc / systemd / system / vncserver @.Servicio; activado; preajuste del proveedor: habilitado) Activo: activo (en ejecución) desde el viernes 2021-03-26 20:00:59 UTC; Hace 3 s… 

Conectando al servidor VNC #

VNC no es un protocolo encriptado y puede estar sujeto a rastreo de paquetes. El enfoque recomendado es crear un túnel SSH y reenviar de forma segura el tráfico desde su máquina local en el puerto 5901 al servidor en el mismo puerto.

Configurar el túnel SSH en Linux y macOS #

Si ejecuta Linux, macOS o cualquier otro sistema operativo basado en Unix en su máquina, puede crear fácilmente un túnel SSH con el siguiente comando:

ssh -L 5901: 127.0.0.1: 5901 -N -f -l vagabundo 192.168.33.10

Se le pedirá que ingrese la contraseña de usuario.

Asegúrate de reemplazar nombre de usuario y dirección IP del servidor con su nombre de usuario y la dirección IP de su servidor.

Configurar el túnel SSH en Windows #

Si ejecuta Windows, puede configurar SSH Tunneling utilizando el cliente PuTTY SSH .

Abra Putty e ingrese la dirección IP de su servidor en el Nombre de host o la dirección IP campo.

Bajo la Conexión menú, caja, expandir SSH, y seleccione Túneles. Ingrese el puerto del servidor VNC (5901) en el Puerto de origen campo e ingrese dirección_ip_servidor: 5901 en el Destino campo y haga clic en el Agregar botón como se muestra en la imagen a continuación:

Vuelve al Sesión página para guardar la configuración, por lo que no es necesario que la ingrese cada vez. Para el servidor remoto, seleccione la sesión guardada y haga clic en el Abierto botón.

Conexión usando Vncviewer #

Ahora que se creó el túnel SSH, es hora de abrir su Vncviewer y conectarse al servidor VNC en localhost: 5901.

Puede utilizar cualquier visor VNC como TigerVNC, TightVNC, RealVNC, UltraVNC, Vinagre y VNC Viewer para Google Chrome .

Usaremos TigerVNC. Abra el visor, ingrese localhost: 5901, y haga clic en el Conectar botón.

Ingrese su contraseña de usuario cuando se le solicite, y debería ver el escritorio Xfce predeterminado. Se verá algo como esto:

Puede comenzar a interactuar con el escritorio XFCE remoto desde su máquina local usando su teclado y mouse.

Conclusión #

Le mostramos cómo instalar y configurar un servidor VNC en funcionamiento, en Ubuntu 20.04.

Para configurar su servidor VNC para iniciar una pantalla para más de un usuario, cree la configuración inicial y configure la contraseña usando el vncpasswd mando. También necesitará crear un nuevo archivo de servicio usando un puerto diferente.

No dude en dejar un comentario si tiene alguna pregunta.

El botón central del mouse no funciona en Windows 10
La botón central del ratón le ayuda a desplazarse por páginas web largas y pantallas con una gran cantidad de datos. Si eso se detiene, bueno, termina...
Cómo cambiar los botones izquierdo y derecho del mouse en una PC con Windows 10
Es una norma que todos los dispositivos de mouse de computadora estén diseñados ergonómicamente para usuarios diestros. Pero hay dispositivos de mouse...
Emule los clics del mouse colocando el mouse con Clickless Mouse en Windows 10
El uso excesivo de un mouse o teclado en una postura incorrecta puede provocar muchos problemas de salud, como tensión, síndrome del túnel carpiano y ...