Habilitar escritorio remoto (Xrdp) en Ubuntu

Habilitar escritorio remoto (Xrdp) en Ubuntu

El escritorio remoto (Xrdp) es una implementación gratuita y de código abierto del servidor Microsoft RDP, este permite que los sistemas operativos distintos de Microsoft Windows proporcionen una experiencia de escritorio remoto totalmente funcional y compatible con RDP. Mediante el mismo puedes acceder a tu sistema ya sea desde entorno Windows o Linux.

Hoy lo estaremos instalando en Ubuntu.

Para ello primeramente accedemos al server mediante ssh

ssh username@your_server_ip

Instalar Xrdp

Seguidamente ejecutamos el siguiente comando para instalar Xrdp en el servidor

sudo apt-get install xrdp

Habilitamos e iniciamos el servicio

sudo systemctl enable xrdp
sudo systemctl start xrdp

Verifica que esté funcionando:

sudo systemctl status xrdp

Instalación de XFCE4

Ahora instalamos nuestro entorno de escritorio preferido en este caso utilizaremos XFCE4

sudo apt install xfce4 xfce4-goodies -y

Configuraciones para utilizar el entorno preferido

Configuramos XRDP para usar el entorno XFCE con el siguiente comando:

echo "startxfce4" > ~/.xsession

Dale permisos correctos:

chmod +x ~/.xsession

También edita (o crea) el archivo global para que todos los usuarios usen XFCE:

sudo nano /etc/xrdp/startwm.sh

🔁 Reemplaza todo el contenido desde estas líneas al final:

. /etc/X11/Xsession

📝 por esto:

#!/bin/sh
startxfce4

Guarda y cierra (Ctrl+O, Enter, luego Ctrl+X).

Agregar usuario al grupo ssl-cert

Esto evita problemas con permisos del certificado:

sudo adduser xrdp ssl-cert

Permitir puerto 3389 en el firewall (si está activado)

Si estamos usando UFW debemos usar el siguiente comando:

sudo ufw allow 3389/tcp

Pero si usamos Iptables en el servidor, mejor usaremos el siguiente comando:

sudo iptables -A INPUT -p tcp --dport 3389 -j ACCEPT
sudo netfilter-persistent save
sudo netfilter-persistent reload

Reiniciar el servicio XRDP

Ya por último reiniciamos la aplicación Xrdp para así asegurarnos de que se reflejen todos los cambios anteriores.

sudo systemctl restart xrdp.service

🧪 Probar conexión

Desde Windows/macOS/Linux, abre el cliente de Escritorio Remoto (RDP):

  • IP: Dirección IP del servidor Ubuntu.
  • Usuario: Tu nombre de usuario de Ubuntu.
  • Contraseña: Tu contraseña.
  • Nota: No uses la cuenta “root” directamente.

Verificación rápida si el puerto está escuchando:

sudo ss -tulpn | grep xrdp

Debe mostrar algo como LISTEN en el puerto 3389.

De esta manera ya podremos conectar al servidor usando RDP.

Si queréis automatizar este proceso mediante un scrip, aquí les dejo uno que he preparado:

🛠️ Script: instalar_xrdp_xfce.sh

#!/bin/bash

echo "=== Instalación de LightDM + XFCE4 + XRDP ==="

# Actualizar sistema
sudo apt update && sudo apt upgrade -y

# Instalar y forzar LightDM como gestor de sesiones
sudo DEBIAN_FRONTEND=noninteractive apt install lightdm -y
echo "/usr/sbin/lightdm" | sudo tee /etc/X11/default-display-manager

# Instalar XFCE4 (se integrará automáticamente con LightDM)
sudo apt install xfce4 xfce4-goodies -y

# Instalar XRDP
sudo apt install xrdp -y
sudo systemctl enable xrdp
sudo systemctl start xrdp

# Configurar sesión para XRDP con XFCE
echo "startxfce4" > ~/.xsession
chmod +x ~/.xsession

# Reemplazar script de inicio de XRDP
sudo bash -c 'cat > /etc/xrdp/startwm.sh <<EOF
#!/bin/sh
startxfce4
EOF'

sudo chmod +x /etc/xrdp/startwm.sh

# Agregar usuario xrdp al grupo ssl-cert
sudo adduser xrdp ssl-cert

# Abrir puerto 3389 si UFW está activo
if sudo ufw status | grep -q "Status: active"; then
    sudo ufw allow 3389
fi

# Opcional: eliminar GDM3 si está presente
if dpkg -l | grep -q gdm3; then
    echo "Eliminando gdm3 para evitar conflictos..."
    sudo apt remove gdm3 -y
fi

# Reiniciar servicios
sudo systemctl restart xrdp
sudo systemctl restart lightdm

echo "✅ Todo instalado correctamente. Puedes conectarte vía RDP a XFCE con LightDM."
echo "🔁 Recomendado: reiniciar el sistema."

Instrucciones para usar el script:

Guarda el script:

sudo nano instalar_xrdp_xfce.sh

Pega el contenido.

Guarda y sal (Ctrl + O, Enter, Ctrl + X).

Hazlo ejecutable:

sudo chmod +x instalar_xrdp_xfce.sh

Ejecuta el script:

sudo ./instalar_xrdp_xfce.sh

Conclusión

Hemos implementado una solución estable, ligera y compatible con entornos virtualizados para el acceso remoto gráfico en Ubuntu 24.04, evitando los cuelgues y conflictos típicos de GNOME + Wayland.

🧘 Beneficios finales:

  • Menor consumo de recursos.
  • Más estabilidad en sesiones remotas.
  • Sin bloqueos del entorno gráfico.
  • Facilidad para mantener y escalar la configuración.

Comentarios

Aún no hay comentarios. ¿Por qué no comienzas el debate?

Deja una respuesta

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