XDRP en CENTOS 8: Instalación

XDRP en CENTOS 8

¿Que es XRDP?

Antes de instalar un servidor XRDP en Centos 8 tendremos que tener claro que XRDP no es más que un clón gratuito del software de acceso remoto de Windows (RDP). Este software funciona en la mayor parte de las distribuciones de Linux y UNIX (esto incluye a FreeBSD, Net-BSD, OpenBSD, HP-UX, AIX, Solaris, etc.).

¿Quien creó XRDP?

XRDP fue creado mediados del año 2004 por el programador Jay Sorg basándose para ello en el software rdesktop  y FreeRDP los cuales ya habían implementado una solución libre de acceso RDP. El servidor XRDP en Centos 8 implementa la última versión del mismo: La 0.9

Instalación de XDRP en CENTOS 8

Cabe señalar que esta guía se ha realizado para la instalación de un servidor XRDP en Centos 8, pero la misma también valdría para cualquier sistema Linux derivado o parecido: Linux Rehat 8, Oracle Linux 8, Fedora, Scientific Linux 8, etc.

Para realizar la instalación del servidor XRDP en Centos 8, lo primero que tendremos que hacer es entrar en la consola de comandos del servidor (con permiso de administrador – root -) y teclear lo siguiente:


sudo dnf -y install xrdp
sudo systemctl enable xrdp
sudo systemctl start xrdp

Si recibimos un mensaje de error, el mismo puede ser debido a que no tenemos instalado el repositorio EPEL. Para instalarlo, tedremos que poner los siguientes comandos:


dnf -y install epel-release

No hay ni que decir, que es estrictamente necesario también tener instalado un entorno gráfico. El cual, lo podremos instalar de la siguiente forma:

sudo dnf groupinstall «Server with GUI»

Ajustes del servidor XDRP en CENTOS 8

Para poder arrancar nuestro servidor XRDP en CENTOS 8 utilizando el entorno de escritorio GNOME, tendremos que modificar el fichero /etc/xrdp/xrdp.ini . Para realizar esto tendremos que introducir el siguiente comando:


sudo bash -c 'echo "exec gnome-session" >> /etc/xrdp/xrdp.ini'

Configuración del firewall

Para abrir el firewall y que el mismo permita acceder al puerto XRDP en CENTOS 8 (puerto 3389) hay que introducir los siguientes comandos en la consola:

sudo firewall-cmd --zone=public --permanent --add-port=3389/tcp
sudo firewall-cmd --reload

Activación del servicio

Ahora vamos a activar y a arrancar el servicio.

sudo systemctl enable xrdp
sudo systemctl start xrdp

Configuración de SElinux

SELinux es un sistema de seguridad que por defecto viene activo en Centos y en todas sus distribuciones hermanas: Red Hat, Oracle Linux, Scientific Linux  y Fedora.

El mismo fue creado por la famosa NSA norteamericana.

En teoría SElinux se encarga de vigilar continuamente el sistema y bloquea cualquier actividad sospechosa. El problema es que para SElinux todo es sospechoso, así que hay que decirle al mismo que servicios queremos permitir.

Esto lo podremos hacer mediante los siguientes comandos:

chcon --type=bin_t /usr/sbin/xrdp
chcon --type=bin_t /usr/sbin/xrdp-sesman

Una vez hecho esto tendremos que reiniciar la máquina para que coja los cambios, ya que por mi experiencia he comprobado que a veces no basta con reiniciar el servicio.

Cambio de puerto XRDP en CENTOS 8

Dejar el puerto 3389 abierto en Internet a todo el mundo es algo bastante arriesgado. Existen cientos de programas informáticos automatizados que intentan explotar las vulnerabilidades del sistema XRDP,  muchos de los cuales son muy usados por los crackers.

Existen algunos programas como Fail2Ban  los cuales nos permiten proteger el sistema frente a ataques de fuerza bruta. Desgraciadamente, debido a la naturaleza del protocolo RDP estos programas no suelen funcionar muy bien con XRDP.

Una recomendación es cambiar el puerto donde XRDP está escuchando. De esta forma podremos evitar en cierto medida los ataques al mismo. Para hacer esto tendremos que editar el fichero /etc/xrdp/xrdp.ini como usuario root y cambiar la línea que pone port=3389 al puerto que deseemos, por ejemplo el 11840   port=11840.

Una vez hecho esto tendremos que abrir el correspondiente puerto en el firewall:

sudo firewall-cmd --add-port=11840/tcp --permanent
sudo firewall-cmd --reload

No deberíamos olvidar también cerrar el puerto 3389 en el firewall:

sudo firewall-cmd --remove-port=3389/tcp --permanent
sudo firewall-cmd --reload

Añadir un comentario

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

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Privacidad y cookies

Utilizamos cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mismas Enlace a polí­tica de cookies y política de privacidad y aviso legal.

Pulse el botón ACEPTAR para confirmar que ha leído y aceptado la información presentada


ACEPTAR
Aviso de cookies