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 Serverhbbr
- 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 bitte
pm2 saveund
pm2 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.