doc.rustdesk.com/content/self-host/install/_index.de.md
2022-08-01 11:49:20 -06:00

7.5 KiB

title weight
Installation 10

Installiere deinen eigenen Server mithilfe von Docker(-Compose)

Anforderungen

Du musst Docker/Podman auf deinem System installiert haben um einen rustdesk-server als Docker-Container laufen zu lassen.

Docker Beispiel-Kommandos

Linux/amd64

sudo docker image pull rustdesk/rustdesk-server
sudo docker run --name hbbs -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -p 21118:21118 -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbs -r <relay-server-ip[:port]> 
sudo docker run --name hbbr -p 21117:21117 -p 21119:21119 -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbr 

Linux/arm64v8

{{% notice note %}} --net=host funktioniert ausschließlich auf Linux, es kümmert sich darum dass hbbs und hbbr die wirkliche anfragende IP Adresse sehen und nicht die Container IP (172.17.0.1). Wenn --net=host gut funktioniert werden die -p optionen nicht verwendet

Bitte entferne --net=host wenn du Verbindungsprobleme hast! {{% /notice %}}

Docker-Compose Beispiele

Hierfür ist ein installiertes docker-compose erforderlich.

Linux/amd64

version: '3'

networks:
  rustdesk-net:
    external: false

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

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

Linux/arm64v8

version: '3'

networks:
  rustdesk-net:
    external: false

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

  hbbr:
    container_name: hbbr
    ports:
      - 21117:21117
      - 21119:21119
    image: rustdesk/rustdesk-server:latest-arm64v8
    command: hbbr
    volumes:
      - ./hbbr:/root
    networks:
      - rustdesk-net
    restart: unless-stopped

Installiere deine eigene Serverinstanz ohne Docker

Schritt 1: Lade die Server-Software herunter

Download. Verfügbare Plattform-Varianten:

  • Linux
  • Windows

Diese Anleitung basiert auf dem Linux-Build. Es gibt zwei ausführbare Dateien und einen Ordner:

  • hbbs - RustDesk ID/Rendezvous Server
  • hbbr - RustDesk Relay Server

Diese werden auf CentOS Linux 7 gebaut, getestet CentOS Linux 7/8 und Ubuntu 18/20 LTS.

Server-Vorsaussetzungen

Die Hardware Voraussetzungen sind sehr niedrig, die Minimalkonfiguration eines einfachen VPS ist ausreichend, so sind auch die CPU und Speicher Voraussetzungen minimal. Auch die Nutzung eines Raspberry Pi ist möglich. In Sachen Netzwerkauslastung wird im Falle des Fehlschlagens der TCP-Punch-Hole Verbindung wird der Traffic über den Relay geleitet. Der Traffic einer Relay Connection ist zwischen 30k und 3M pro Sekunde (1920x1080 Auflösung), abhängig von der Auflösung und der Bildwiederholfrequenz. Wenn es nur um normale Büroarbeit geht, sollte sich der Traffic auf etwa 100k/s belaufen.

Schritt 2: Führe hbbs und hbbr auf dem Server

Starte hbbs und hbbr auf deinem Server (CentOS oder Ubuntu). Wir empfehlen die Nutzung von pm2 zum Managen des Service.

./hbbs -r <relay-server-ip[:port]>
./hbbr

oder starte hbbs/hbbr mit pm2 aus:

pm2 start hbbs -- -r <relay-server-ip[:port]>
pm2 start hbbr

{{% notice note %}} pm2 benötigt nodejs v16+, falls die Ausführung von pm2 fehlschlägt (bspw. tauchen 'hbbs'/'hbbr' in pm2' list nicht auf), downloade und installiere die nodejs LTS-Version von https://nodejs.org. Wenn du hbbs/hbbrautomatisch starten möchtest beim booten, führe bittepm2 saveundpm2 startup` aus. Mehr über pm2. Ein gutes Tool für Logs ist pm2-logrotate.

Der -r parameter von hhbs ist nicht zwingend erforderlich, es ist aber normal keinen relay-Server clientseitig zu konfigurieren. Falls der Standardport 21117 genutzt wird muss kein Port angegeben werden. Der Relay-Server der durch den Client spezifiziert wird hat grundsätzlich eine höhere Priorität als der hier spezifizierte. {{% /notice %}}

Standardmäßig hört hbbs auf den Ports 21115(tcp), 21116(tcp/udp) und 21118(tcp) and hbbr hört auf 21117(tcp) und 21119(tcp). Diese Ports müssen in der Firewall geöffnet sein. Beachte, dass 21116 sowohl für TCP als auch UDP aktiviert sein muss. 21115 wird genutzt für den NAT Typ Test, 21116/UDP für die ID Registrierung und den Heartbeat Service, 21116/TCP für das TCP Hule Punching und den Verbindungs Service, 21117 für die Relay Services, und 21118 und 21119 für den Support von Webclients. Wenn die Unterstützung von Web Clients nicht benötigt wird können 21118 und 21119 natürlich geschlossen werden.

  • TCP(21115, 21116, 21117, 21118, 21119)
  • UDP(21116)

Bitte führ die -h Option aus um die Hilfe aufzurufen

{{% notice note %}} --net=host funktioniert ausschließlich auf Linux, es kümmert sich darum dass hbbs und hbbr die wirkliche anfragende IP Adresse sehen und nicht die Container IP (172.17.0.1). Wenn --net=host gut funktioniert werden die -p optionen nicht verwendet

Bitte entferne --net=host wenn du Verbindungsprobleme hast! {{% /notice %}}

Schritt 3: Konfiguriere die hbbs/hbbr Adresse im Client

Klicke auf den Menü-Button rechts neben der ID, wie im Screenshot zu sehen, und wähle "ID/Relay Server".

Trage dort den Domainnamen oder die IP-Adresse des hbbs-Server ein. Die anderen beiden Adressen und der Key können freigelassen werden, diese werden automatisch ausgemacht.

Übergebe die Konfiguration mit dem rustdesk.exe Dateinamen (nur bei Windows)

Ändere den Dateinamen rustdesk.exe zu rustdesk-host=<host-ip-or-name>,key=<public-key>.exe, z.B. rustdesk-host=192.168.178.150,key=xdsgdda32=32.exe. Ob das geklappt hat, kann im About Rustdesk Fenster ausm Screenshot unten geprüft werden. {{% notice note %}} Sowohl der host als auch der key müssen gesetzt werden, sonst funktionieren beide nicht.

Falls irgendwelche invaliden Szeichen im key zu finden sind, die nicht in einem Windowsdateinamen sein dürfen, entferne bitte die id_ed25519 Datei vom Server und starte hbbs und hbbr neu. Daraufhin wird die id_ed25519.pub neu generiert. Unter Umständen muss dieser Prozess mehrmals wiederholt werden. {{% /notice %}}

Menu About Page

Key

Im Gegensatz zu Vorgängerversion, ist der Key inzwischen zwingend erforderlich, aber er muss nicht selbst gesetzt werden. Bei der ersten Ausführung von hbbs wird ein Keypair von private und public Keys nach ed25519 automatisch erzeugt und abgelegt und anschließend primär für die Kommunikationsverschlüsselung genutzt.

English