Ein Linux-Server hat keinen Bildschirm, und meistens braucht er auch keinen. Manchmal doch: ein Browser, der von der Adresse des Servers aus laufen muss, ein Werkzeug nur mit grafischer Oberfläche oder ein Desktop, den Sie laufen lassen und von jedem Computer aus wieder aufrufen können. Diese Anleitung fügt Ubuntu 24.04 den schlanken Desktop XFCE und xrdp hinzu. Dann öffnen Sie ihn mit derselben Remotedesktop-App wie einen Windows-Server.
Wir haben jeden Schritt auf unserem Ubuntu-24.04-Image getestet. Zwei Voreinstellungen haben den ersten Versuch zum Scheitern gebracht, unten beheben wir beide. Sie brauchen einen normalen Benutzer mit sudo; die Ubuntu-Einrichtungsanleitung legt einen an. In den Beispielen heißt er deploy.
1. XFCE und xrdp installieren
sudo apt update
sudo apt install -y xfce4 xfce4-goodies xrdp
Auf unserem Server mit 2 GB dauerte das etwa viereinhalb Minuten und belegte 1,7 GB Festplatte (vorher 2,7 GB belegt, danach 4,4 GB). Installiert wird xrdp 0.9.24, das sofort startet und auf Port 3389 lauscht.
2. xrdp XFCE starten lassen, nicht GNOME
Melden Sie sich als der Benutzer an, der den Desktop nutzen wird, und führen Sie aus:
echo xfce4-session > ~/.xsession
Ohne diese Datei startete unsere erste Anmeldung GNOME statt XFCE, und die Sitzung brach sofort mit „Oh no! Something has gone wrong“ ab. Die Pakete aus Schritt 1 ziehen den Sitzungsmanager von GNOME mit, und Ubuntu macht ihn zum Standard. Mit ~/.xsession startet xrdp XFCE.
3. xrdp TLS nutzen lassen
xrdp läuft unter einem eigenen Benutzer xrdp, und der kann den privaten Schlüssel des Servers nicht lesen. Unsere erste Verbindung klappte, aber /var/log/xrdp.log zeigte, warum man ihr nicht trauen sollte:
Cannot read private key file /etc/xrdp/key.pem: Permission denied
Non-TLS connection established from ::ffff:127.0.0.1
Ohne den Schlüssel fällt xrdp auf die alte RDP-Verschlüsselung statt TLS zurück. Geben Sie ihm Zugriff und starten Sie neu:
sudo adduser xrdp ssl-cert
sudo systemctl restart xrdp
Die nächste Verbindung stand in unserem Log als TLS connection established ... TLSv1.3. Ihren Server prüfen Sie genauso:
sudo grep -E "TLS connection|Non-TLS" /var/log/xrdp.log | tail -2
4. Port 3389 vom Internet fernhalten
Nach der Installation lauscht xrdp auf allen Adressen. Anders als Windows hat xrdp keine Network Level Authentication: Wer den Port erreicht, bekommt einen Anmeldebildschirm, an dem er Passwörter raten kann. Lassen Sie ihn nur auf dem Server selbst lauschen:
sudo sed -i 's|^port=3389$|port=tcp://127.0.0.1:3389|' /etc/xrdp/xrdp.ini
sudo systemctl restart xrdp
ss -ltn | grep 3389
Die letzte Zeile sollte 127.0.0.1:3389 zeigen. In unserem Test wurde eine direkte Verbindung zur Adresse des Servers auf 3389 danach abgewiesen, der Tunnel aus dem nächsten Schritt funktionierte weiter.
5. Über SSH verbinden
Öffnen Sie auf Ihrem eigenen Computer einen Tunnel. Unter Windows gibt es denselben ssh-Befehl in PowerShell:
ssh -L 13389:localhost:3389 deploy@YOUR.SERVER.IP
Bei einem NAT-Tarif ergänzen Sie -p und den persönlichen SSH-Port aus dem Dashboard. Lassen Sie das Fenster offen. Richten Sie dann Ihre Remotedesktop-App auf localhost:13389 und melden Sie sich als deploy mit dessen Passwort an:
- Windows: Remotedesktopverbindung (
mstsc). - macOS: die Windows App aus dem App Store.
- Linux: Remmina oder
xfreerdp /v:localhost:13389 /u:deploy.
Der lokale Port ist 13389 statt 3389, weil 3389 auf Ihrem Computer schon vom eigenen Remotedesktop belegt sein kann. Beim ersten Mal warnt die App vor einem unbekannten Zertifikat. Das ist das selbstsignierte Zertifikat des Servers, und die Verbindung ist innerhalb von SSH ohnehin verschlüsselt.
6. Was Sie bekommen
Sie bekommen einen XFCE-Desktop mit Leiste, Dateimanager und Terminal. Auf unserem Server kamen mit einer Sitzung etwa 360 MB RAM dazu: 388 MB belegt vor der Verbindung, 747 MB während der Sitzung.
Wenn Sie das Remotedesktop-Fenster schließen, werden Sie nicht abgemeldet. In unserem Test lief ein langer Befehl nach dem Trennen weiter. Als wir uns wieder verbanden, setzte xrdp uns in dieselbe Sitzung zurück (reconnected session ... display :10 in seinem Log). Um die Sitzung wirklich zu beenden, nutzen Sie Log Out im XFCE-Menü.
Welcher Tarif
Der Desktop braucht eher RAM als CPU. Micro (2 vCPU, 2 GB, 25 GB, $5/Monat) betreibt XFCE und leichte Werkzeuge bequem. Wenn in der Sitzung dauerhaft ein Webbrowser offen sein soll, nehmen Sie Small mit 4 vCPU und 4 GB für $8/Monat. Beides sind NAT-Tarife, und das ist hier kein Problem: Der Remotedesktop läuft über Ihren SSH-Port.
Wenn Sie eigentlich Windows-Software brauchen, läuft sie direkt auf einem Windows-VPS, und Windows-Small gibt es ab $11/Monat. Ubuntu 24.04 steht auf der Ubuntu-VPS-Seite und bei jedem Linux-Tarif unter VPS. Bezahlt wird in USDT, USDC oder ETH auf Base, Ethereum oder Polygon.
Kommentare
Noch keine Kommentare. Sei der Erste.