- Implementación de una infraestructura de acceso remoto mediante el despliegue de los servicios hbbs y hbbr.
- Configuración exhaustiva de puertos TCP y UDP para garantizar la conectividad y el bypass de NAT.
- Aseguramiento de la privacidad y el control de datos mediante el autoalojamiento de la señalización y el relay.

¿Cómo montar tu propio servidor RustDesk con Docker? Si estás harto de depender de herramientas cerradas y quieres tener el control absoluto de tus sesiones de escritorio remoto, montar tu propia infraestructura con RustDesk es la jugada maestra. Es básicamente una alternativa de código abierto a gigantes como TeamViewer o AnyDesk, pero con el valor añadido de que tú eres el dueño del servidor, lo que significa que tus datos no pasan por manos ajenas y te olvidas de las dichosas limitaciones de licencias.
Para los que no quieran complicarse la vida con instalaciones manuales, Docker es la ruta más rápida y eficiente. No solo te permite desplegar el servidor en un pispás, sino que hace que las actualizaciones sean un paseo y que el despliegue sea repetible en cualquier máquina, ya sea un VPS en la nube, un servidor doméstico o incluso una Raspberry Pi si te apetece experimentar.
¿Cómo funciona realmente el servidor auto-hospedado?

Para entender qué estamos montando, hay que saber que RustDesk no es un único programa, sino que se apoya en dos ejecutables fundamentales. Por un lado tenemos hbbs (ID Server), que se encarga de la señalización y de que los equipos se encuentren entre sí. Por otro lado está hbbr (Relay Server), que entra en juego cuando la conexión directa falla y el tráfico debe rebotar a través del servidor.
El proceso es sencillo: el cliente hace un ping constante al servidor de ID para avisar que está vivo. Cuando intentas conectar el equipo A con el B, el servidor hbbs intenta hacer un hole punching para establecer un túnel directo. Si esto no funciona por culpa de un firewall agresivo, entonces hbbr toma el relevo para retransmitir los datos, asegurando que la conexión se establezca sí o sí.
Requisitos técnicos y preparación del entorno

No hace falta que te gastes una fortuna en hardware; los requisitos son bajísimos. Con un servidor Linux (estamos hablando de Ubuntu 22.04 o 24.04 LTS) que tenga 1 vCPU y 2 GB de RAM vas sobrado para gestionar decenas de conexiones simultáneas. Eso sí, es fundamental contar con una IP pública fija para que tus clientes no pierdan el rastro del servidor.
Antes de lanzar los contenedores, debes preparar el terreno instalando Docker y Docker Compose. Si usas entornos más específicos como Unraid, puedes recurrir a imágenes optimizadas (como la de Ich777) que simplifican el proceso, integrando todo en una interfaz más visual y manejable.
Configuración de puertos y Firewall

Este es el punto donde la mayoría de la gente mete la pata. Para que todo fluya, debes abrir los puertos específicos en tu firewall (ya sea UFW en Linux o el panel de tu proveedor de nube). Los puertos esenciales son el TCP 21115, el TCP 21116 y el UDP 21116. Este último es crítico ya que maneja el registro de ID y el latido del sistema.
Además, necesitas el puerto TCP 21117 para el servicio de Relay. Si tienes pensado usar el cliente web de RustDesk, tendrás que habilitar los puertos TCP 21118 y 21119 (WebSockets). Para los usuarios de la versión Pro que no usan proxy SSL, el puerto TCP 21114 es necesario para que la API funcione correctamente, aunque lo ideal es pasar todo por un proxy reverso como Nginx para usar HTTPS sobre el puerto 443.
Despliegue paso a paso con Docker Compose

La forma más limpia de hacer esto es creando una carpeta dedicada, por ejemplo en /opt/rustdesk-server/, y redactando un archivo compose.yml. Un detalle vital es utilizar network_mode: «host», ya que RustDesk necesita conocer la IP real del host para que el redireccionamiento de tráfico no sea un caos.
Una vez configurado el archivo, levantas los servicios con un simple comando. Tras el arranque, es imprescindible obtener la clave pública del servidor. Esta clave se encuentra en el directorio de datos persistentes y es el «apretón de manos» que garantiza que solo los clientes autorizados se conecten a tu infraestructura. Si no montas los volúmenes de datos persistentes, perderás esta configuración cada vez que actualices el contenedor.
Ajustes en el cliente y seguridad avanzada
Ya con el servidor arriba, ve a la configuración de red de tu cliente RustDesk. Tienes que introducir la IP de tu servidor tanto en el campo de ID Server como en el de Relay Server, y pegar la clave pública que rescatamos anteriormente. Si usas un servicio como DuckDNS, puedes poner el dominio en lugar de la IP para no depender de cambios en la dirección del servidor.
Para que tu red sea un búnker, no te quedes solo en la instalación. Puedes implementar contraseñas de un solo uso para soporte puntual o claves permanentes para tus propios equipos. Si buscas el máximo nivel, activa la autenticación en dos factores (2FA) mediante aplicaciones o Telegram. Para entornos corporativos, lo más sensato es cerrar el firewall del servidor para que solo acepte conexiones desde IPs corporativas o a través de una VPN, creando así una red totalmente cerrada y privada.
Diferencias con la versión Pro
Aunque la versión OSS es fantástica, RustDesk ofrece una variante Pro para quienes necesitan gestión centralizada de usuarios y grupos. Esta versión permite integrar el servidor con Active Directory o LDAP y ofrece registros de auditoría mucho más detallados, lo cual es un requisito indispensable en muchas empresas por normativa de seguridad.
Tener tu propio servidor RustDesk mediante Docker te permite eliminar intermediarios, reducir la latencia y garantizar que el acceso remoto a tus máquinas sea privado y eficiente. Al combinar una configuración correcta de puertos, el uso de volúmenes persistentes y capas de seguridad como 2FA o VPNs, transformas una herramienta sencilla en una potente infraestructura de soporte profesional bajo tu total control.
Apasionado de la tecnología desde pequeñito. Me encanta estar a la última en el sector y sobre todo, comunicarlo. Por eso me dedico a la comunicación en webs de tecnología y videojuegos desde hace ya muchos años. Podrás encontrarme escribiendo sobre Android, Windows, MacOS, iOS, Nintendo o cualquier otro tema relacionado que se te pase por la cabeza.