Xpra Open Source: la alternativa ligera al VNC y RDP para Linux
¿Te imaginas acceder al escritorio de tu servidor Linux como si estuvieras sentado frente a él, pero desde otro sistema, otro país o incluso otro continente? Hace unos años eso solo era cosa de VNC lentos, RDP en Windows o conexiones “mega configuradas”. Pero hoy, con herramientas como Xpra, esa experiencia es real, fluida y bastante sencilla de montar.
Xpra es una herramienta Open Source pensada para el mundo Linux (aunque también tiene soporte para otras plataformas) que te permite “desconectar” tu sesión gráfica, moverla de equipo o reconectarte desde otro dispositivo sin perder lo que estabas haciendo. Es decir, ejecutas una aplicación en tu servidor, cierras la ventana, te vas a otro ordenador y la vuelves a abrir exactamente donde la dejaste.
Eso trae ventajas enormes: menos consumo de recursos en el equipo cliente, mejor seguridad, flexibilidad para trabajar remoto, y la capacidad de desplegar entornos gráficos ligeros en servidores sin necesidad de VMs pesadas. Sí, como todo, tiene sus retoques y particularidades, pero cuando funciona…es una pasada.
En esta entrada vamos a explorar por qué debería importarte Xpra, qué puede hacer por ti, cómo instalarlo y configurarlo, y también qué tener en cuenta al usarlo.
¿Por qué usar Xpra?
- Desacoplamiento de sesión gráfica: puedes lanzar una aplicación gráfica en el servidor, desconectarte, y reconectarte desde otro lado sin perder progreso.
- Uso ligero de recursos: no tienes que renderizar todo un escritorio virtual pesado cada rato. Xpra transmite solo lo que cambia.
- Transparencia de ventanas: tus aplicaciones remotas actúan como si estuvieran localmente en tu escritorio.
- Seguridad integrable: puedes usar SSH, túneles o TLS para asegurar la conexión, sin necesidad de abrir demasiados puertos.
- Compatible con múltiples plataformas: clientes para Linux, Windows, macOS e incluso dispositivos móviles.
- Ideal para administración, desarrollo o acceso remoto de servidores gráficos: pruebas de UI, mantenimiento remoto, demostraciones, etc.
Instalación de XPra bajo Debian y Ubuntu
Para el ejemplo, vamos a explicar como se instala bajo Debian / Ubuntu:
sudo apt updatesudo apt install xpra

Lanzamos el servicio y nos aseguramos que arranque en el reinicio:
systemctl start xprasystemctl enable xprasystemctl status xpra

Ahora iniciamos una sesión Xpra en el servidor, pero con otro usuario y no con root:
xpra start :100 --start-child=xterm
Esto lanza una nueva sesión gráfica virtual con display ":100" y abre "xterm" (terminal gráfico). Lo que hace que esté funcionando en segundo plano.
A modo informativo, si necesitáis configuraciones extras, podéis encontrar el fichero de configuración por defecto en "/etc/xpra/xpra.conf":

Conexión desde un Cliente
Si usamos otro linux, podemos usar los siguientes comandos:
xpra attach ssh:user@servidor-ip:100# O también TCP directo
xpra attach tcp://servidor-ip:100
Si fuese de la misma máquina, sería:
xpra attach :100
Xpra también dispone de clientes para MacOS o Windows:

Probaremos la opción más común Windows. Instalamos el cliente en nuestra máquina:

Aceptamos y pulsamos Next (Windows puede detectarlo como no confiable):

Pulsamos Next:

Pulsamos Install:

Y lanzamos el cliente:

La interfaz es simple, o podemos buscar en la red, conectarnos directamente al servidor:

Rellenamos los datos de servidor, usuario y contraseña (como podéis observar, por defecto usa el puerto de comunicación TCP - 14500, tenerlo en cuenta si saltáis entre redes o una VPN):

Yo personalmente, recomiendo usar SSH. Pulsamos "Connect":

Acceso vía Navegador a XPra
Una opción muy interesante, es lanzar la sesión para que desde el cliente Windows, por ejemplo, podamos abrir un navegador web y acceder. Para ello lanzamos la sesión de esta forma:
xpra start :100 --bind-tcp=0.0.0.0:14500 --html=on
Luego simplemente, abre un navegador web y vete a la ip del servidor por el puerto 14500:
http://X.X.X.X:14500/

Introducimos usuario y contraseña. Pulsamos "Connect", y ya tenemos acceso vía navegador (en este ejemplo no lanzo el escritorio completo, para que sea más ligero, que os explico en el siguiente punto):

Mejores prácticas y funciones avanzadas XPra
La parametrización de XPra es máxima, así que os dejamos unos pocos consejos:
- Usa xpra start --daemon=no para ejecutar en primer plano durante pruebas.
- Habilita cifrado con --encrypt o pasa por SSH.
- Redirige audio o dispositivos USB con --sound=yes o --usb=yes.
- Controla la calidad adaptativa: --encoding=auto, --quality=75, etc.
- Usa archivo de configuración (~/.xpra/xpra.conf) para ajustes permanentes.
- Automático al inicio: crea un servicio systemd para que Xpra arranque con el sistema.
- Monitoriza logs (~/.xpra/log/) para ver problemas de red o rendimiento.
Ejemplos de comandos XPra
Sesión básica:
xpra start :100 --start-child=xterm --exit-with-children
Sesión persistente:
xpra start :101 --start-child=lxterminal
Sesión con escritorio completo (LXDE o XFDE):
xpra start :103 --start-child=startlxde --exit-with-children
Controlando el rendimiento y ancho de banda:
xpra start :104 --start-child=xterm --encoding=jpeg --quality=70 --min-quality=40 --speed=2
Sesión con autenticación de contraseña:
echo "MiClaveSegura123" > ~/.xpra_passchmod 600 ~/.xpra_pass
xpra start :105 --bind-tcp=0.0.0.0:14501 --html=on --tcp-auth=file:filename=$HOME/.xpra_pass
Con audio y webcam:
xpra start :106 --start-child=xterm --audio-source=pulseaudio --webcam=no
En modo "Forwarding", sólo lanza una app:
xpra start :107 --start-child=firefox --exit-with-children
Modo diagnóstico:
xpra start :108 --start-child=xterm --exit-with-children --debug
Otro:
xpra start :100 \ --start-child=xterm \ --exit-with-children \
--encoding=auto \ --webcam=no \ --mdns=no \ --notifications=no
Si queréis limpiar las sesiones previas:
xpra stop :100# O todasxpra stop --all
Ventajas y Desventajas de XPra
Ventajas
- Ligero y eficiente para sesiones gráficas puntuales.
- Ideal para trabajo remoto gráfico, no solo terminales.
- Buen soporte multiplataforma.
Desventajas
- No es “máquina virtual completa” como otros productos (no puede emular hardware completo).
- Dependiente de la calidad de la red (como todos los sistemas remotos).
- Algunas funciones gráficas muy avanzadas pueden tener latencia o artefactos visuales.
- Configuración inicial requiere conocimiento básico de Linux/display xorg/ssh.
Escritorio remoto Linux con Xpra
Si eres administrador de sistemas, desarrollador, o simplemente usuario avanzado que quiere acceder a su entorno Linux desde cualquier parte sin depender de licencias infladas ni sistemas pesados, Xpra es una herramienta que deberías tener en tu caja de herramientas.
No te va a rendir igual que una sesión local con hardware potente, pero la gracia está ahí, conectarte, trabajar, desconectarte, y volver a donde lo dejaste sin romper nada. Esa flexibilidad, junto con la ligereza del sistema y la claridad del acceso remoto, lo hacen ideal tanto para pruebas como para producción ligera.
En definitiva, Xpra te abre la puerta al escritorio Linux remoto de forma práctica, moderna y eficiente. Vale la pena probarlo, ajustarlo a tu flujo de trabajo, y luego verás cómo se convierte en tu “ventana remota favorita”.
Fin del Artículo. ¡Cuéntanos algo en los Comentarios!



