Cómo Construir tu Propio Servidor de Escritorio Remoto con RustDesk: Alternativa Open Source a TeamViewer

3/17/2026

Cómo Construir tu Propio Servidor de Escritorio Remoto con RustDesk: Alternativa Open Source a TeamViewer

Cómo Construir tu Propio Servidor de Escritorio Remoto con RustDesk: Alternativa Open Source a TeamViewer

Introducción: Cuando TeamViewer Te Dice "No Más"

¿Recuerdas la última vez que intentaste ayudar a un familiar con problemas en su ordenador? Abriste TeamViewer, introdujiste el ID, esperaste la conexión... y justo cuando estabas a punto de resolver el problema, apareció ese mensaje temido: "Su sesión gratuita ha expirado. Detectamos uso comercial".

O peor aún: eres freelancer, trabajas desde casa, y necesitas acceder a tu ordenador de oficina. Llevas 4 horas trabajando en remoto y de repente: "Ha alcanzado su límite de conexión diaria". Tu trabajo se detiene. El deadline no espera.

Esta es la realidad de las soluciones comerciales de escritorio remoto en 2026. TeamViewer, AnyDesk, y sus competidores han construido imperios basados en un modelo simple: ofrecer comodidad a cambio de control. Y ese intercambio, cada vez más, no favorece al usuario.

El Precio Real de la "Gratuidad"

En un mundo donde el trabajo remoto y la administración de sistemas a distancia son cada vez más comunes, herramientas como TeamViewer y AnyDesk han dominado el mercado. Y con razón: son fáciles de usar, funcionan a través de cualquier firewall, y ofrecen una experiencia fluida. Pero esta comodidad tiene costes ocultos que pocos usuarios dimensionan hasta que es demasiado tarde.

La Solución: RustDesk y el Poder del Auto-Hospedaje

Aquí es donde RustDesk cambia las reglas del juego. Imagina tener las mismas capacidades que TeamViewer —conexiones rápidas, compatibilidad multiplataforma, acceso web— pero con una diferencia fundamental: tú controlas todo.

RustDesk es un software de escritorio remoto de código abierto que te permite:

  • Alojar tu propio servidor: Tus datos nunca salen de tu infraestructura
  • Sin límites artificiales: Conecta 10, 100, o 1000 dispositivos si tu servidor lo soporta
  • Privacidad por diseño: Tráfico cifrado que pasa solo por TUS servidores
  • Coste predecible: Solo pagas el hosting (~5-10€/mes en un VPS modesto)
  • Auditable: Código abierto que puedes revisar, modificar, y verificar

No es solo "otra alternativa a TeamViewer". Es la filosofía opuesta: control sobre conveniencia, transparencia sobre confianza ciega, propiedad sobre dependencia.

En este artículo, te guiaré paso a paso para construir tu propio servidor RustDesk usando Docker, configurar la conectividad remota desde internet, y aprovechar todas sus capacidades profesionales. Al final, tendrás una solución de escritorio remoto profesional, privada, sin ataduras, y sin facturas mensuales sorpresa.

¿Qué es RustDesk? La Historia Detrás del Proyecto

RustDesk nació en 2021 como respuesta directa a la frustración que muchos desarrolladores y administradores de sistemas sentían con las soluciones comerciales. El proyecto fue iniciado por Rustdesk Group, un colectivo de desarrolladores especializados en sistemas de bajo nivel y networking, con una visión clara: crear una alternativa de escritorio remoto completamente abierta, auditable, y auto-hospedable.

Por Qué Rust Importa (Y No Es Solo Marketing)

El nombre "RustDesk" no es casual. El proyecto está escrito en Rust, un lenguaje de programación moderno que ofrece ventajas cruciales para este tipo de software:

En la práctica, esto se traduce en: un cliente RustDesk consume ~50-80MB de RAM (vs ~150-200MB de TeamViewer) y ~5-10% de CPU durante transmisión activa en una máquina modesta.

Arquitectura: Cómo Funciona Por Dentro

A diferencia de TeamViewer que es una "caja negra", RustDesk es completamente transparente sobre su arquitectura. Utiliza un modelo cliente-servidor con dos componentes principales:

1. Cliente A quiere conectar a Cliente B

2. Ambos están registrados en tu servidor hbbs

3. RustDesk primero intenta conexión P2P directa (sin relay)

4. Si falla, usa hole punching (técnica para atravesar NAT)

5. Si también falla, enruta tráfico a través de tu servidor hbbr

La diferencia con TeamViewer: en escenarios ideales (misma red local o NAT compatible), el tráfico va directo entre clientes, ni siquiera toca el servidor. Máxima velocidad, cero latencia adicional.

Características Principales (Y Por Qué Importan)

Comparativa Profunda: RustDesk vs TeamViewer vs AnyDesk

Hablemos de números reales. No solo "características en papel", sino TCO (Total Cost of Ownership) a 3 años, privacidad real, y capacidades técnicas.

Tabla Comparativa Exhaustiva

Análisis de Costes Realista

  • RustDesk: VPS básico (Hetzner CPX11, 2vCPU/4GB) = 5€/mes → 60€/año
  • TeamViewer Business: 600€/año (1 licencia)
  • Ahorro en 3 años: 1.620€
  • RustDesk: VPS mediano (CPX21, 3vCPU/8GB) = 10€/mes + IP adicionales = 150€/año
  • TeamViewer: 10 licencias × 600€ = 6.000€/año
mkdir -p ~/docker/rustdesk/{hbbs,hbbr}
cd ~/docker/rustdesk
  • Ahorro en 3 años: 17.550€
  • RustDesk: Servidor dedicado + backup = ~500€/año
  • TeamViewer Corporate: Mínimo 15.000-25.000€/año (cotización custom)
  • Ahorro en 3 años: 44.000-74.500€

Estos números no incluyen el coste oculto de vendor lock-in. Con TeamViewer, suben precios y no puedes hacer nada. Con RustDesk, tu coste es predecible y escalas linealmente.

services:
  hbbs:
    container_name: rustdesk-hbbs
    image: rustdesk/rustdesk-server:latest
    command: hbbs -r rustdesk.tudominio.com:21117
    volumes:
      - ./hbbs:/root
    network_mode: host
    restart: unless-stopped

  hbbr:
    container_name: rustdesk-hbbr
    image: rustdesk/rustdesk-server:latest
    command: hbbr
    volumes:
      - ./hbbr:/root
    network_mode: host
    restart: unless-stopped

Privacidad: No Es Paranoia, Es Compliance

Para muchas empresas, privacidad no es una "preferencia nice-to-have": es requisito legal.

  • Data Processing Agreement (DPA)
  • Standard Contractual Clauses (SCC)
  • Privacy Shield (invalidado en 2020, problemas sin resolver)
docker compose up -d

Con RustDesk auto-hospedado en un datacenter EU: cumples GDPR por diseño. Tus datos nunca salen de la UE.

Requisitos Previos: Lo Que Necesitas Antes de Empezar

No necesitas ser un experto en Linux o Docker, pero sí ciertos fundamentos. Aquí está TODO lo que necesitas:

Hardware/Servidor

  • Proveedor: Hetzner, DigitalOcean, Linode, Vultr
  • Specs mínimas: 2 vCPU, 2GB RAM, 20GB SSD
  • Ancho de banda: Mínimo 10 Mbps up/down (100+ Mbps ideal)
  • Coste: ~5-10€/mes
  • Cualquier PC con Linux (incluso un Raspberry Pi 4 funciona para <10 usuarios)
  • IP pública (estática o dinámica con DynDNS)
  • Router con capacidad de port forwarding
  • Hetzner Dedicated, OVH, etc.
  • Para 50+ usuarios simultáneos: 4+ cores, 8GB+ RAM
  • Coste: ~40-80€/mes

Software Base

cat ~/docker/rustdesk/hbbs/id_ed25519.pub
  • Sistema operativo: Ubuntu 22.04 LTS (o Debian 11+, Rocky Linux 9+)
  • Docker 24.0+ y Docker Compose 2.20+ instalados
  • Acceso SSH con clave pública (no contraseña)
  • (Opcional) Dominio propio: Facilita mucho el setup. Cualquier .com/.net funciona

Conocimientos Necesarios

ID Server: rustdesk.tudominio.com
Relay Server: rustdesk.tudominio.com
Key: [tu clave pública aquí]
  • Conectar por SSH a un servidor Linux
  • Editar archivos de texto (nano, vim, o similar)
  • Ejecutar comandos básicos (cd, ls, docker compose up)
  • Conceptos de networking (NAT, port forwarding)
  • Conocimientos básicos de Docker
  • Gestión de DNS

Si nunca has tocado Docker, no te preocupes: los comandos son literales y copiar-pegar. Si algo falla, hay troubleshooting al final.

Checklist Pre-Instalación

Antes de continuar, verifica que tienes:

  • [ ] Servidor/VPS con Ubuntu/Debian y acceso SSH
  • [ ] Docker y Docker Compose instalados (docker --version debe funcionar)
  • [ ] IP pública del servidor anotada
  • [ ] (Opcional) Dominio configurado apuntando a tu IP
  • [ ] Acceso al panel del router si planeas exponer desde casa
  • [ ] 30 minutos de tiempo sin interrupciones

¿Todo listo? Vamos a la instalación.

Instalación Paso a Paso: Tu Servidor RustDesk en 15 Minutos

Esta es la parte que todos esperan. Voy a guiarte comando por comando, explicando QUÉ hace cada paso y POR QUÉ es necesario. Si eres experto, puedes ir rápido. Si es tu primera vez, tómate tu tiempo.

Paso 1: Preparar el Entorno

Conéctate a tu servidor por SSH:

docker logs rustdesk-hbbs --tail 50
docker logs rustdesk-hbbr --tail 50

Una vez dentro, vamos a crear una estructura de directorios limpia. En Linux, es buena práctica mantener tus servicios Docker organizados bajo ~/docker/:

  • mkdir -p: Crea directorios anidados (el -p evita error si ya existen)
  • hbbs y hbbr: Subdirectorios donde cada contenedor guardará sus datos persistentes (IDs registrados, configuración, etc.)

1. Seguridad (si un componente se compromete, el otro sigue aislado)

2. Escalabilidad (puedes correr cada servidor en máquinas distintas más adelante)

Paso 2: Crear el Archivo Docker Compose

Docker Compose permite definir múltiples contenedores y su configuración en un solo archivo YAML. Vamos a crearlo:

Y pega este contenido (o adáptalo si usas otro dominio):

  • services: Define los contenedores que vamos a correr
  • hbbs / hbbr: Nombres de servicio (puedes cambiarlos)
cd ~/docker/rustdesk
docker compose restart
  • container_name: Nombre del contenedor (aparecerá en docker ps)
  • image: rustdesk/rustdesk-server:latest: Imagen oficial de RustDesk desde Docker Hub. El tag latest descarga siempre la versión más reciente
  • command: hbbs -r rustdesk.tudominio.com:21117:
  • hbbs: Ejecuta el ID/Rendezvous server
  • -r rustdesk.tudominio.com:21117: Indica a los clientes DÓNDE está el relay server (hbbr). Cambia `rustdesk.tudominio.com` por tu dominio o IP pública
cd ~/docker/rustdesk
docker compose down
  • volumes: - ./hbbs:/root:
  • Monta el directorio local ./hbbs dentro del contenedor en /root
  • Aquí se guardan los IDs registrados, claves, y configuración
  • Si destruyes el contenedor, los datos persisten en tu servidor
  • network_mode: host:
cd ~/docker/rustdesk
docker compose pull
docker compose up -d
  • Crítico: Usa la red del host directamente (no crea bridge)
  • RustDesk usa UDP y protocolos de hole-punching que requieren acceso directo a puertos
  • Con bridge mode, NAT traversal falla
  • restart: unless-stopped:
  • Si el contenedor crashea, Docker lo reinicia automáticamente
  • Solo se detiene si TÚ ejecutas docker stop manualmente
  • Tu dominio real si lo tienes (rustdesk.ejemplo.com)
  • Tu IP pública si no tienes dominio (192.0.2.100)

Guarda el archivo (Ctrl+O, Enter, Ctrl+X en nano).

Paso 3: Desplegar los Contenedores

Ahora viene la magia. Un solo comando descarga las imágenes, crea los contenedores, y los arranca:

  • docker compose: Herramienta para gestionar multi-contenedores
  • up: Crear y arrancar servicios
  • -d: Modo "detached" (segundo plano, no bloquea tu terminal)

Verifica que estén corriendo:

Puerto 21115 (TCP) → 192.168.1.X
Puerto 21116 (TCP/UDP) → 192.168.1.X
Puerto 21117 (TCP) → 192.168.1.X
Puerto 21118 (TCP) → 192.168.1.X
Puerto 21119 (TCP) → 192.168.1.X

Deberías ver dos contenedores con estado Up:

Paso 4: Obtener tu Clave Pública

RustDesk genera automáticamente un par de claves criptográficas (Ed25519) durante el primer arranque. Los clientes necesitan la clave pública para validar la identidad del servidor y establecer conexiones cifradas.

Extrae la clave:

Paso 5: Configuración de Red - Port Forwarding

RustDesk utiliza 5 puertos que deben ser accesibles desde internet:

Los puertos suelen estar abiertos por defecto. Solo verifica firewall:

1. Accede al panel del router (típicamente 192.168.1.1)

2. Busca "Port Forwarding", "NAT", o "Virtual Servers"

3. Crea reglas para redirigir cada puerto a la IP local de tu servidor

Paso 6: Configurar DNS (Si Usas Dominio)

Si tienes un dominio, crea un registro A:

1. Panel CloudFlare → Tu dominio → DNS

2. Add record

3. Type: A | Name: rustdesk | IPv4: <tu IP> | Proxy: DESACTIVADO (nube gris)

4. Save

Debe devolver tu IP pública.

No problem. Usa directamente tu IP pública en la configuración de clientes.

Paso 7: Verificar que Todo Funciona

Prueba conectividad a los puertos:

¡Listo! Tu servidor RustDesk está operativo. Ahora vamos a configurar los clientes para usarlo.

Configuración de Clientes: Conectando a Tu Servidor

Con el servidor corriendo, es hora de configurar los clientes. El proceso es sorprendentemente simple y se hace una sola vez por dispositivo.

Windows, macOS, y Linux

Visita: https://github.com/rustdesk/rustdesk/releases/latest