Wie man einen eigenen RustDesk Server im Homelab betreibt und ihn per URL erreichbar macht.
Proxmox Container erstellen (ich nutze Debian 12 als Template) und starten
Container aktualisieren (apt update && apt full-upgrade -y)
Der Anweisung auf https://rustdesk.com/docs/de/self-host/rustdesk-server-oss/install/ folgen :
wget https://raw.githubusercontent.com/techahold/rustdeskinstall/master/install.sh
chmod +x install.sh
./install.sh
Dort bereits angeben, dass ihr eine Domain und keine IP benutzen möchtet, also eure Subdomain der Wahl eingeben.
Wenn ihr HTTP Server mit ausgewählt habt, bekommt ihr am Ende die Ausgabe:
Creating /var/log/gohttp
Tidying up Go HTTP Server Install
Created symlink /etc/systemd/system/multi-user.target.wants/gohttpserver.service -> /etc/systemd/system/gohttpserver.service.
Your IP/DNS Address is RUSTDESK.EURE-DOMAIN.de
Your public key is EuerLangerPublicKey6756745674564567=
Install Rustdesk on your machines and change your public key and IP/DNS name to the above
You can access your install scripts for clients by going to http://RUSTDESK.EURE-DOMAIN.de:8000
Username is admin and password is JHujiUIZGtzufu
Diese Daten alle unbedingt kopieren, diese sind sehr wichtig!
Ob die beiden Dienste laufen, könnt ihr checken mit den Befehlen:
systemctl status rustdesksignal
systemctl status
rustdeskrelay
Als nächstes habe ich in NPM (Nginx Proxy Manager) einen neuen Proxy Host erstellt und ihn auf http://10.10.20.11:8000 geleitet (dies ist mein RustDesk Container im LAN) ihr müsst natürlich die IP auswählen, die bei euch korrekt ist, ich habe nur Block Common Exploits aktiviert und auch SSL ist eher optional.
Als nächstes unter Hosts -> Streams die Ports weiterleiten
21114-21119 TCP und 21116 noch zusätzlich auch als UDP
Außerdem die Ports auch in der FritzBox freigeben und auf eure NPM IP leiten.
Ich nutze dafür den Dienst von https://desec.io und ein Script teilt ihm meine Dynamische IP Adresse mit, damit diese als A-Records aktuell gehalten werden.
Ob die Portweiterleitung funktioniert, könnt ihr z.B. mit https://check-host.net/check-tcp prüfen, einfach eure Domain:Port eingeben und es sollte eure IP-Adresse aufgelöst werden. (Achtung, der Port 21114 wird euch immer Refused auswerfen)
Außerdem kann es etwas dauern, bis euer Anbieter eure Subdomain auch korrekt auflöst, testet notfalls erst 24h später erneut, wenn es nicht sofort funktioniert.