RustDesk Server: Control remoto seguro y autoalojado en tu infraestructura

RustDesk permite el control remoto de dispositivos sin depender de servicios en la nube. Gracias a su servidor autoalojable, puedes gestionar conexiones de forma segura, privada y eficiente.

Con el aumento de la preocupación por la privacidad, muchas organizaciones buscan alternativas a las herramientas de acceso remoto tradicionales. RustDesk es una de las opciones más atractivas: código abierto, multiplataforma, cifrado de extremo a extremo y, lo más importante, con posibilidad de autoalojamiento total del servidor de conexión.

En este artículo te explicamos cómo funciona el backend de RustDesk, sus componentes clave y cómo desplegarlo en servidores propios, tanto de forma manual como mediante Docker o docker-compose.


¿Qué es RustDesk y qué compone su servidor?

RustDesk permite controlar ordenadores de forma remota sin intermediarios en la nube. Para ello, su infraestructura incluye:

  • hbbs (RustDesk Broker/Signaling Server): gestiona IDs y conexiones entrantes.
  • hbbr (Relay Server): actúa como relé cuando no es posible conexión P2P directa.
  • rustdesk-utils: utilidades CLI para generar claves y otras tareas administrativas.

Ambos servidores se comunican con los clientes para facilitar el acceso remoto, autenticación y transmisión de datos cifrados.

RustDesk Server: Control remoto seguro y autoalojado en tu infraestructura | rustdeck server diagram
RustDesk Server: Control remoto seguro y autoalojado en tu infraestructura

Opciones de despliegue

1. Despliegue rápido con Docker

Ejecución directa (modo clásico)

# Inicia hbbs con Docker
docker run --name hbbs --net=host -v "$PWD/data:/root" -d rustdesk/rustdesk-server:latest hbbs -r <IP_RELAY:21117>

# Inicia hbbr con Docker
docker run --name hbbr --net=host -v "$PWD/data:/root" -d rustdesk/rustdesk-server:latest hbbr

Si no usas --net=host, algunas funciones como la conexión directa P2P no funcionarán.

Con puertos explícitos (sin --net=host)

docker run --name hbbs -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -p 21118:21118 \
  -v "$PWD/data:/root" -d rustdesk/rustdesk-server:latest hbbs -r <IP_RELAY:21117>

docker run --name hbbr -p 21117:21117 -p 21119:21119 \
  -v "$PWD/data:/root" -d rustdesk/rustdesk-server:latest hbbr

docker-compose básico

version: '3'

services:
  hbbs:
    container_name: hbbs
    image: rustdesk/rustdesk-server:latest
    ports:
      - 21115:21115
      - 21116:21116
      - 21116:21116/udp
      - 21118:21118
    command: hbbs -r rustdesk.example.com:21117
    volumes:
      - ./data:/root
    restart: unless-stopped

  hbbr:
    container_name: hbbr
    image: rustdesk/rustdesk-server:latest
    ports:
      - 21117:21117
      - 21119:21119
    volumes:
      - ./data:/root
    restart: unless-stopped

2. Imagen con supervisión (S6 Overlay)

Ideal para simplificar el despliegue en un solo contenedor.

docker run --name rustdesk-server --net=host \
  -e "RELAY=rustdeskrelay.example.com" \
  -e "ENCRYPTED_ONLY=1" \
  -v "$PWD/data:/data" -d rustdesk/rustdesk-server-s6:latest

Variables útiles

  • RELAY: IP o FQDN del servidor de relé.
  • ENCRYPTED_ONLY=1: fuerza uso exclusivo de conexiones cifradas.
  • KEY_PUB / KEY_PRIV: claves públicas y privadas para cifrado.
  • DB_URL: ruta del archivo SQLite.

Seguridad: generación y gestión de claves

Puedes generar un par de claves usando:

docker run --rm --entrypoint /usr/bin/rustdesk-utils rustdesk/rustdesk-server-s6:latest genkeypair

Guarda las claves y configúralas mediante variables o secretos de Docker:

-e "KEY_PUB=..."
-e "KEY_PRIV=..."

O con Docker Secrets si usas Swarm o Kubernetes.


¿Y si no quieres usar Docker?

También puedes compilar el servidor manualmente:

git clone https://github.com/rustdesk/rustdesk-server
cd rustdesk-server
cargo build --release

Esto generará los binarios hbbs, hbbr y rustdesk-utils en target/release.


Requisitos de puertos

ComponentePuerto TCPPuerto UDPFunción
hbbs21115-2111621116Control de sesión y señalización
hbbr21117-21119Relay para conexión indirecta

Asegúrate de abrir estos puertos en tu firewall.


Conclusión

RustDesk representa una alternativa sólida, libre y auditable a servicios privativos de acceso remoto. Para sysadmins, su arquitectura autoalojada ofrece control total, seguridad y adaptabilidad para entornos empresariales, laboratorios, centros de datos o redes remotas.

Puedes consultar más información y documentación oficial en:

👉 https://github.com/rustdesk/rustdesk-server

Suscríbete al boletín SysAdmin

Este es tu recurso para las últimas noticias y consejos sobre administración de sistemas, Linux, Windows, cloud computing, seguridad de la nube, etc. Lo enviamos 2 días a la semana.

¡Apúntate a nuestro newsletter!


– patrocinadores –

Noticias destacadas

– patrocinadores –

¡SUSCRÍBETE AL BOLETÍN
DE LOS SYSADMINS!

Scroll al inicio
×