LINUX

5 herramientas para habilitar el acceso a escritorio remoto en RHEL/CentOS 7

Centos de acceso a escritorio remoto

En este tutorial, le mostraré herramientas que le permitirán acceder a Escritorio remoto en máquinas que ejecutan CentOS/RHEL. Todas estas aplicaciones funcionan en modo cliente-servidor. Por lo tanto, debe ejecutar una aplicación del lado del servidor en su máquina remota y, después de eso, podrá conectarse a ella desde cualquier parte del mundo. Por supuesto, en este manual de referencia, le diré cómo configurar esto de forma segura, para que solo usted pueda acceder a su servidor.

Antes de comenzar, necesitará acceso SSH a su servidor y permisos para instalar el software. Deberá iniciar sesión como usuario raíz o usuario con privilegios de sudo. Todos los comandos funcionarán en todos los servidores CentOS 5/6/7/8. Antes de comenzar, debe instalar el entorno de escritorio en su servidor.

# yum groupinstall 'GNOME Desktop Environment' 'X Window System'

1) VNC

x11vnc: el más simple de estos tres métodos para obtener acceso remoto. VNC significa Virtual Network Computing) es un protocolo de gráficos de red muy útil.

Debe habilitar el repositorio EPEL (Extra Packages for Enterprise Linux). Correr

# yum -y install epel-release

Ahora podemos instalar x11vnc. Este comando instalará el servidor y resolverá todas las dependencias:

# yum -y install x11vnc

Luego protegeremos el servidor con contraseña:

# x11vnc -storepasswd

Enter VNC password:

Verify password:

Write password to /root/.vnc/passwd? [y]/n y

Password written to: /root/.vnc/passwd

!No utilice contraseñas simples!

Ahora estamos listos para iniciar el servidor:

# x11vnc --reopen --forever -rfbauth ~/.vncpasswd &

Puede verificar si los servidores comenzaron:

# netstat -an | grep 5900

tcp 0 0 0.0.0.0:5900 0.0.0.0:* LISTEN

tcp6 0 0 :::5900 :::* LISTEN

Si está bien, simplemente intente conectarse usando vncviewer.

# yum -y install vnc
# vncviewer YOUR_SERVER_IP

¡Eso es todo! Ahora tienes acceso a tu escritorio. Después de reiniciar simplemente ssh de nuevo y hazlo de nuevo.

x11vnc --reopen --forever -rfbauth ~/.vnc/passwd &

2) servidor TigerVNC

TigerVNC: es una implementación de VNC de alto rendimiento e independiente de la plataforma

# yum install -y tigervnc-server

Copiemos la configuración de ejemplo y editémosla:

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

Ejemplo de configuración:

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
Requires=systemd-logind.service

[Service]
Type=oneshot
RemainAfterExit=yes

# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l USERNAME -c "/usr/bin/vncserver %i"
ExecStop=/usr/sbin/runuser USERNAME -c '/usr/bin/vncserver -kill %i'

[Install]
WantedBy=multi-user.target

NOTA: Debe cambiar el NOMBRE DE USUARIO en la configuración anterior si usará la misma configuración de VNC. Esta es la configuración que usamos para este tutorial.

Ahora debemos ejecutar el comando vncpasswd para configurar nuestra contraseña de acceso y/o contraseña de solo vista (una contraseña que permite al usuario ver solo la pantalla remota):

# vncpasswd 
Password:
Verify:
Would you like to enter a view-only password (y/n)? n
A view-only password is not used

Ahora habilite el servicio de inicio automático y reinícielo:

$ systemctl enable vncserver@:1.service
$ systemctl restart vncserver@:1.service

Puede verificar el estado del servicio vnc escribiendo:

$ systemctl status vncserver@:1.service

Si todo salió bien, debería tener una salida de terminal similar a esta:

$ systemctl status vncserver@:1.service
● vncserver@:1.service - Remote desktop service (VNC)
   Loaded: loaded (/etc/systemd/system/vncserver@:1.service; enabled; vendor preset: disabled)
   Active: active (exited) since Wed 2020-09-30 22:04:47 CEST; 7s ago
  Process: 3766 ExecStart=/usr/sbin/runuser -l slax -c /usr/bin/vncserver %i (code=exited, status=0/SUCCESS)
  Process: 3761 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS)
 Main PID: 3766 (code=exited, status=0/SUCCESS)

Sep 30 22:04:44 localhost.localdomain systemd[1]: Starting Remote desktop service (VNC)...
Sep 30 22:04:47 localhost.localdomain systemd[1]: Started Remote desktop service (VNC).

Y finalmente conéctate a él:

# vncviewer YOUR_SERVER_IP

3) XRDP

XRDP es un servidor de protocolo de escritorio remoto de código abierto. Para usar XRDP, debe tener el servicio VNC ya instalado. Por lo tanto, debe seguir la primera o la segunda opción de este tutorial antes de la instalación de XRDP.

En primer lugar, debemos instalar el repositorio EPEL y el servidor xrdp:

# yum -y install epel-release
# yum -y install xrdp

Ahora comencemos el servicio:

# systemctl start xrdp.service 

Compruebe si se está ejecutando y agréguelo al inicio automático.

# netstat -an | grep 3389 
tcp 0 0 0.0.0.0:3389 0.0.0.0:* LISTEN
# systemctl enable xrdp.service

Eso es todo. Ahora puede conectarse a su servidor desde cualquier máquina con Windows.

4) Visor de equipos

Teamviewer no existe en los repositorios estándar, por lo que debemos instalar wget y descargar el paquete rpm de TeamViewer

# yum -y install wget
# wget https://download.teamviewer.com/download/linux/teamviewer.x86_64.rpm

Instálalo usando este comando:

# yum install teamviewer.x86_64.rpm

Y establece tu contraseña:

# teamviewer passwd YOUR_PASSWORD
ok
# systemctl start teamviewerd.service

Ahora solo necesitas obtener tu id para conectarte:

# teamviewer –info
TeamViewer ID: 9XXXXXXX7

Intente conectarse usando esta identificación y contraseña que configuró antes:

5) FreeNX

FreeNX es una solución de acceso remoto basada en tecnologías de código abierto de clase empresarial de NoMachine. Si desea exactamente esta herramienta para obtener acceso remoto, puede considerar actualizar a la versión en la nube.

En primer lugar, debemos agregar los repositorios e EPEL + nux-dextop, para Centos 6:

# rpm -Uvh https://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
# rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm

Para Centos 7

# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

Instalar servidor y agente:

# yum install freenx-server nxagent 

Habilite la autenticación passdb:

# echo 'ENABLE_PASSDB_AUTHENTICATION="1"' >> /etc/nxserver/node.conf

Ahora necesitamos crear un usuario para acceso remoto y asignarle una contraseña:

# /usr/libexec/nx/nxserver --adduser bob 
NX> 100 NXSERVER - Version 3.2.0-74-SVN OS (GPL, using backend: not detected)
NX> 1000 NXNODE - Version 3.2.0-74-SVN OS (GPL, using backend: not detected)
NX> 716 Public key added to: /home/bob/.ssh/authorized_keys2
NX> 1001 Bye.
NX> 999 Bye

#/usr/libexec/nx/nxserver --passwd bob 
NX> 100 NXSERVER - Version 3.2.0-74-SVN OS (GPL, using backend: not detected)
New password:
Password changed.
NX> 999 Bye

Ahora instalaremos epel-repos y opennx client en su máquina:

# yum install opennx

Después de iniciar el asistente de opennx, se le preguntará sobre el nombre de la sesión, la dirección del servidor y el puerto. Lo más importante es configurar su clave. Deberá copiar la clave del servidor /etc/nxserver/client.id_dsa.key y pegarla en la pestaña general de las propiedades de la sesión de su cliente.

Comparta sus comentarios sobre este tutorial y háganos saber si conoce otras herramientas.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar