Cómo configurar el reenvío X11 en Linux

X11 (también conocido como Xorg Server) es el sistema de visualización para Linux. La tecnología ha existido desde mediados de los 80 y fue diseñada durante una época en la que las computadoras personales se estaban convirtiendo en algo común.

Sin entrar en una lección de historia, X11 es esencial para todos los usuarios de Linux, incluso hasta el día de hoy. Hace que la interfaz gráfica funcione y es muy importante para la mayoría de las operaciones del día a día, etc.

Aparte de su capacidad para manejar tarjetas gráficas y renderizar el escritorio en Linux, una de las mejores características de X11 es el hecho de que puede mostrar una interfaz gráfica a través de una red a través del reenvío X11. En este tutorial, le mostraremos cómo configurar el reenvío X11 en Linux a través de SSH.

Prerrequisitos

Para utilizar el reenvío X11 en Linux, debe tener SSH configurado. La razón por la que se requiere SSH es que el reenvío X11 es una característica de Secure Shell, y actualmente no hay forma de aprovechar esta característica fuera de SSH.

Configurar un servidor SSH es bastante fácil, y la mayoría de las distribuciones de Linux lo hacen poco más que un proceso de uno o dos pasos. Para configurarlo, abra una ventana de terminal e instale el SSH cliente en la computadora que se conecta. Con el cliente instalado, muévase a la computadora o servidor remoto e instale el paquete del servidor SSH y habilite los servicios de systemd para comenzar a usarlo.

¿No está seguro de cómo instalar y utilizar el servidor Secure Shell en Linux? ¡Podemos ayudar! Consulte nuestro tutorial sobre cómo configurar SSH. Repasa cómo configurar conexiones, ¡e incluso algunos ejemplos de comandos comunes!

Habilitar el reenvío X11

La habilitación de la función de reenvío X11 en SSH se realiza dentro del archivo de configuración SSH. El archivo de configuración es / etc / ssh / ssh_config y debe editarse con sudo o acceso de usuario root. Abra una ventana de terminal y ejecute el comando de inicio de sesión de superusuario. Si no puede usar su porque su sistema lo tiene deshabilitado, reemplácelo con sudo -s para iniciar sesión en la cuenta Root de esa manera.

su -

o

sudo -s

El terminal ahora tiene acceso de root, por lo que es seguro abrir ssh_config con el editor de texto Nano. En una terminal, abra ssh_config en la herramienta de edición de texto Nano.

nano -w /etc/ssh/ssh_config

Desplácese por el editor de texto Nano usando las teclas de flecha arriba / abajo, localice la línea que dice «ForwardX11» y elimine el símbolo de comentario (#) de delante del código.

Nota: Si no puede encontrar la línea de reenvío X11 en el archivo ssh_config, presione Ctrl + W en Nano para que aparezca la función de búsqueda. Luego pegue “ForwardX11” y presione Enter para saltar a la línea de código en el archivo de configuración.

Después de realizar las ediciones en el archivo de configuración del servidor SSH, presione el atajo de teclado Ctrl + O para guardar las ediciones que ha realizado. Cierre la herramienta de edición Nano con Ctrl + X.

Restablecer el servidor SSH

Ahora que la línea X11Forward está activada en el archivo de configuración del servidor SSH, el software del servidor SSH debe reiniciarse, ya que los cambios de configuración no ocurren de inmediato. Para la mayoría de las distribuciones de Linux, restablecer SSH implica usar el comando systemctl restart.

Nota: Las distribuciones de Linux que no usan systemd tienen su propio mecanismo de reinicio para SSH. Si no puede encontrar el comando para reiniciar el software del servidor Secure Shell, lo mejor que puede hacer es reiniciar la máquina. Los cambios de configuración comenzarán a funcionar después de reiniciar.

systemctl restart sshd.service

Cuando el servicio en segundo plano SSHD vuelva a funcionar, su servidor SSH estará listo para reenviar ventanas X11 a través de la red.

Utilice el reenvío X11

El reenvío X11 es una característica de SSH, no algo propio. Para usarlo, escriba un comando de conexión SSH como el siguiente.

Nota: reemplace el usuario remoto y el nombre de host remoto con el nombre de usuario remoto y el nombre de host remoto o la dirección IP

ssh remoteuser@remote-hostname -X

Si su servidor SSH se ejecuta en un puerto que no es el puerto predeterminado, es decir, el puerto 22, deberá especificarlo en el comando de conexión. Pruebe el siguiente ejemplo de comando para realizar una conexión exitosa.

ssh remoteuser@remote-hostname -X -p portnumber

Una vez que se realiza una conexión SSH exitosa a la máquina remota, puede reenviar de forma remota las aplicaciones instaladas en el servidor al escritorio de su computadora ejecutando el programa desde la terminal.

Por ejemplo, para iniciar la versión de Gedit instalada en el servidor SSH, ejecutaría el comando gedit.

gedit

Para el administrador de archivos Nautilus, puede ejecutar el comando nautilus.

nautilus

¿Necesita iniciar más de un programa a través del reenvío SSH y X11? Deberá abrir varias conexiones SSH y trabajar desde cada una de ellas.

Cerrar programas reenviados

Para cerrar una aplicación abierta reenviada a través de SSH, puede presionar Ctrl + C, o hacer clic en el botón «cerrar» como cualquier otro programa en su computadora.