↓ Zum Hauptinhalt springen
  1. Anleitungen/

RustDesk-Server installieren: Eigene Fernwartung ohne TeamViewer

Patrick Adams
Autor
Patrick Adams
Linux-Administrator und IT-Specialist. Ich schreibe über Server, Self-Hosting und Open-Source-Software, praxisnah und selbst getestet. Mehr über mich →
Inhaltsverzeichnis
RustDesk ist eine freie Alternative zu TeamViewer und AnyDesk. Mit einem eigenen Server laufen alle Verbindungen über deine Infrastruktur statt über fremde Server, und du zahlst keine Lizenzgebühren.
Voraussetzungen: Ein Server mit Debian, einer öffentlichen IP-Adresse oder Domain und Root-Zugriff. RustDesk braucht kaum Ressourcen, ein kleiner VPS mit 1 CPU-Kern und 1 GB RAM reicht.

So funktioniert der RustDesk-Server
#

Der Server besteht aus zwei Teilen:

  • hbbs ist der ID-Server. Er vermittelt, welcher Rechner unter welcher ID erreichbar ist.
  • hbbr ist der Relay-Server. Er leitet die Verbindung weiter, wenn sich zwei Rechner nicht direkt erreichen können.

Auf deinen Rechnern läuft der normale RustDesk-Client, den du nur auf deinen Server einstellst.

Docker installieren
#

System aktualisieren
#

apt update && apt upgrade -y && apt install ca-certificates curl -y

Docker-Paketquelle einrichten
#

install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian $(. /etc/os-release && echo "$VERSION_CODENAME") stable" > /etc/apt/sources.list.d/docker.list

Docker und Docker Compose installieren
#

apt update && apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

Dockge installieren
#

Dockge einrichten
#

Dockge ist eine Weboberfläche, mit der du Docker-Compose-Stacks bequem im Browser verwaltest. Dieser Befehl legt die Verzeichnisse an und startet Dockge:

mkdir -p /opt/stacks /opt/dockge && cd /opt/dockge && curl -fsSL https://raw.githubusercontent.com/louislam/dockge/master/compose.yaml -o compose.yaml && docker compose up -d

Dockge öffnen
#

Öffne Dockge im Browser und lege direkt dein Admin-Konto an:

http://IP-deines-Servers:5001
Lege das Admin-Konto in Dockge sofort an. Bis dahin kann jeder, der die Adresse aufruft, das Konto für sich anlegen.

RustDesk-Server einrichten
#

Stack anlegen
#

Klicke in Dockge auf + Compose und gib unter „Allgemein“ den Stack-Namen rustdesk ein.

compose.yaml einfügen
#

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

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

Mit network_mode: host nutzen die Container direkt die Netzwerkschnittstelle des Servers. Das ist bei RustDesk so empfohlen, damit die Verbindungen zuverlässig klappen.

Stack starten
#

Klicke auf Speichern und dann auf Deploy.

Ports freigeben
#

Damit deine Clients den Server erreichen, müssen diese Ports in der Firewall offen sein:

PortProtokollWofür
21115TCPNAT-Test
21116TCP und UDPID-Server und Verbindungsaufbau
21117TCPRelay

Mit UFW geht das so:

ufw allow 21115:21117/tcp
ufw allow 21116/udp

Öffentlichen Schlüssel auslesen
#

Beim ersten Start erzeugt der Server ein Schlüsselpaar. Den öffentlichen Schlüssel brauchst du gleich für die Clients:

cat /opt/stacks/rustdesk/data/id_ed25519.pub
Die Datei id_ed25519 ohne Endung ist der private Schlüssel. Den gibst du nie weiter und sicherst ihn gut. Geht er verloren, musst du alle Clients mit einem neuen Schlüssel einrichten.

Clients mit deinem Server verbinden
#

Installiere RustDesk auf jedem Rechner, den du fernwarten oder von dem aus du zugreifen willst. Dann öffnest du im Client die Einstellungen → Netzwerk → ID/Relay-Server und trägst ein:

  • ID-Server: die IP-Adresse oder Domain deines Servers
  • Relay-Server: dieselbe Adresse
  • Key: der Inhalt der Datei id_ed25519.pub

Das Feld API-Server bleibt leer. Nach dem Speichern zeigt der Client unten an, dass er bereit ist, und alle Verbindungen laufen über deinen eigenen Server.

RustDesk-Server aktualisieren
#

cd /opt/stacks/rustdesk && docker compose pull && docker compose up -d

Verwandte Artikel