Ubuntu-Fernbedienung (GUI)
Ubuntu Server enthält standardmäßig keine grafische Oberfläche. Sie können jedoch eine installieren und sich remote über VNC oder RDP damit verbinden. Diese Anleitung behandelt beide Methoden.
Setzen Sie die Ports 5901 (VNC) oder 3389 (RDP) nicht direkt dem Internet aus. Verwenden Sie einen SSH-Tunnel, WireGuard oder eine andere VPN-Lösung, um die Verbindung abzusichern. Wenn Sie diese Ports durch die Firewall zulassen müssen, beschränken Sie den Zugriff ausschließlich auf vertrauenswürdige IP-Bereiche.
Für die meisten produktiven Ubuntu-Server wird folgende Kombination empfohlen: die Desktop-Umgebung Xfce, xrdp für den Fernzugriff sowie WireGuard oder ein SSH-Tunnel für eine sichere Verbindung.
Was Sie benötigen
- Ubuntu-Server (20.04 / 22.04 / 24.04)
- Root- oder Sudo-Zugriff
- Ein Client-Computer (Windows oder macOS), von dem aus Sie sich verbinden
Installation einer Desktop-Umgebung
Aktualisieren Sie die Paketliste:
apt update && apt upgrade -y
Installieren Sie den minimalen GNOME-Desktop:
apt install ubuntu-desktop-minimal -y
Für produktive Server wird generell Xfce empfohlen — es verbraucht weniger Ressourcen und funktioniert über VNC und xrdp zuverlässiger:
apt install xfce4 xfce4-goodies -y
Nachdem die Installation abgeschlossen ist, setzen Sie das Standard-Boot-Ziel auf den grafischen Modus und starten Sie neu:
systemctl set-default graphical.target reboot
Der Befehl systemctl set-default graphical.target ändert dauerhaft den Standard-Bootmodus, sodass die grafische Umgebung nach jedem Neustart automatisch startet. Auf einem Headless-Server, auf dem Sie nur den Fernzugriff auf den Desktop benötigen, können Sie diesen Schritt überspringen und einfach neu starten.
Option 1: Verbindung über VNC
Mit VNC (Virtual Network Computing) können Sie den Desktop remote anzeigen und steuern. Dieser Abschnitt verwendet TigerVNC.
TigerVNC-Server installieren
apt install tigervnc-standalone-server tigervnc-common -y
Einen VNC-Benutzer erstellen
Führen Sie VNC als Nicht-root-Benutzer aus. Erstellen Sie einen, falls Sie noch keinen haben:
adduser vncuser
Fügen Sie den VNC-Benutzer nicht der sudo-Gruppe hinzu. Wenn ein Angreifer Zugriff auf die VNC-Sitzung erlangt, würde ihm der sudo-Zugriff die volle Kontrolle über den Server geben.
Wechseln Sie zu diesem Benutzer:
su - vncuser
Ein VNC-Passwort festlegen
vncpasswd
Geben Sie ein Passwort ein und bestätigen Sie es. Wenn Sie gefragt werden „Would you like to enter a view-only password?“, geben Sie n ein.
VNC benötigt ein Xorg-Backend. Unter Ubuntu 24.04 läuft GNOME standardmäßig unter Wayland. Wenn Sie VNC mit GNOME verwenden möchten, deaktivieren Sie zunächst Wayland wie im xrdp-Abschnitt unten beschrieben (WaylandEnable=false in /etc/gdm3/custom.conf). Ohne dies kann ein schwarzer Bildschirm auftreten.
Unter Ubuntu 24.04 ist dbus-launch möglicherweise nicht standardmäßig installiert. Wenn beim Start der VNC-Sitzung ein Fehler „command not found“ auftritt, installieren Sie es zuerst: apt install dbus-x11 -y
Die VNC-Sitzung konfigurieren
Erstellen Sie das Konfigurationsverzeichnis und die Startdatei:
mkdir -p ~/.vnc nano ~/.vnc/xstartup
Fügen Sie Folgendes ein:
#!/bin/bash export XDG_SESSION_TYPE=x11 export GNOME_SHELL_SESSION_MODE=ubuntu unset DBUS_SESSION_BUS_ADDRESS unset XDG_RUNTIME_DIR exec dbus-launch --exit-with-session gnome-session --session=ubuntu
Wenn Sie Xfce anstelle von GNOME installiert haben, ersetzen Sie die letzte Zeile durch: exec startxfce4
Machen Sie die Datei ausführbar:
chmod +x ~/.vnc/xstartup
Den VNC-Server starten
vncserver :1 -geometry 1920x1080 -depth 24
Dies startet eine VNC-Sitzung auf Display :1 (Port 5901). Display :2 würde Port 5902 verwenden usw.
Um den Server zu stoppen:
vncserver -kill :1
Den Firewall-Port öffnen
ufw allow 5901/tcp
Beschränken Sie den Zugriff nach Möglichkeit auf einen bestimmten IP-Bereich, anstatt alle Quellen zuzulassen: ufw allow from 192.168.1.0/24 to any port 5901 proto tcp
Verbindung von Windows aus herstellen
Laden Sie TightVNC oder RealVNC Viewer herunter und installieren Sie es.
Öffnen Sie den Client und geben Sie ein: your-server-ip:5901
[IMAGE: vnc-connect-address.png — RealVNC Viewer mit eingegebener Server-Adresse]
Geben Sie bei Aufforderung das VNC-Passwort ein. Nach der Verbindung sehen Sie den Remote-Desktop:
[IMAGE: vnc-xfce-desktop.png — der über VNC angezeigte Remote-Desktop]
Verbindung von macOS aus herstellen
macOS enthält einen integrierten VNC-Client. Öffnen Sie den Finder, drücken Sie Cmd+K und geben Sie ein:
vnc://your-server-ip:5901
Geben Sie bei Aufforderung das Passwort ein.
VNC-Datenverkehr ist standardmäßig nicht verschlüsselt. Tunneln Sie die Verbindung über SSH: ssh -L 5901:localhost:5901 user@your-server-ip, und verbinden Sie sich dann von Ihrem VNC-Client aus mit localhost:5901.
Option 2: Verbindung über RDP
RDP (Remote Desktop Protocol) ist das Standardprotokoll der Windows-Remotedesktopverbindung. Unter Ubuntu wird es vom Paket xrdp bereitgestellt.
GNOME-Sitzungen über xrdp können auf manchen Ubuntu-Versionen instabil sein, insbesondere wenn Wayland aktiviert ist. Xfce bietet in der Regel eine zuverlässigere Remote-Desktop-Erfahrung.
Wayland deaktivieren
xrdp benötigt ein Xorg-Backend. Öffnen Sie die GDM-Konfigurationsdatei:
nano /etc/gdm3/custom.conf
Suchen Sie die Zeile #WaylandEnable=false, kommentieren Sie sie ein und speichern Sie die Datei:
WaylandEnable=false
xrdp installieren
apt install xrdp -y
Aktivieren und starten Sie den Dienst:
systemctl enable --now xrdp
xrdp-Benutzer zur Gruppe ssl-cert hinzufügen
adduser xrdp ssl-cert
Die Startdatei der Sitzung konfigurieren
Öffnen Sie /etc/xrdp/startwm.sh und fügen Sie die folgenden Zeilen vor der abschließenden exec-Zeile hinzu:
export XDG_SESSION_TYPE=x11 export GNOME_SHELL_SESSION_MODE=ubuntu unset DBUS_SESSION_BUS_ADDRESS unset XDG_RUNTIME_DIR
Den Firewall-Port öffnen
ufw allow 3389/tcp
Beschränken Sie den Zugriff nach Möglichkeit auf einen bestimmten IP-Bereich: ufw allow from 192.168.1.0/24 to any port 3389 proto tcp
xrdp neu starten
systemctl restart xrdp
Verbindung von Windows aus herstellen
Drücken Sie Win+R, geben Sie mstsc ein und drücken Sie die Eingabetaste. Geben Sie die IP-Adresse Ihres Servers ein und klicken Sie auf Verbinden.
[IMAGE: mstsc-connection-dialog.png — Remotedesktopverbindung mit eingegebener Server-Adresse]
Belassen Sie am xrdp-Anmeldebildschirm die Sitzung auf Xorg und geben Sie Ihren Ubuntu-Benutzernamen und Ihr Passwort ein:
[IMAGE: xrdp-login.png — der xrdp-Anmeldebildschirm]
Nach der Anmeldung erscheint der Remote-Desktop:
[IMAGE: rdp-xfce-desktop.png — der über RDP angezeigte Remote-Desktop]
Verbindung von macOS aus herstellen
Installieren Sie Microsoft Remote Desktop aus dem App Store.
Klicken Sie auf „PC hinzufügen“ und geben Sie die IP-Adresse Ihres Servers ein.
Melden Sie sich mit Ihrem Ubuntu-Benutzernamen und -Passwort an.
Vergleich: VNC vs. RDP
| VNC | RDP | |
|---|---|---|
| Protokoll | Offener Standard | Microsoft (Open-Source-Implementierung via xrdp) |
| Windows-Client | Drittanbieter-Software erforderlich | Integriert (mstsc) |
| macOS-Client | Integriert (Finder) | Microsoft Remote Desktop (App Store) |
| Verschlüsselung | Standardmäßig keine (SSH-Tunnel verwenden) | TLS (von xrdp verwaltet) |
| Leistung | Mäßig | Im Allgemeinen flüssiger |
| Mehrbenutzerunterstützung | Eingeschränkt | Besser |
Fehlerbehebung
Schwarzer Bildschirm nach RDP-Anmeldung — stellen Sie sicher, dass die erforderlichen Umgebungsvariablen wie oben beschrieben zu /etc/xrdp/startwm.sh hinzugefügt wurden und dass Wayland in /etc/gdm3/custom.conf deaktiviert ist. Starten Sie dann xrdp neu: systemctl restart xrdp
VNC-Verbindung abgelehnt — überprüfen Sie, ob der VNC-Server läuft: vncserver -list. Stellen Sie sicher, dass Port 5901 in der Firewall geöffnet ist.
VNC-Sitzung startet nicht — beenden Sie die Sitzung, löschen Sie die Sperrdateien und starten Sie neu:
vncserver -kill :1 rm -f ~/.vnc/*.log ~/.vnc/*.pid vncserver :1
Verbindungsabbruch oder grauer Bildschirm nach Passworteingabe bei xrdp — erstellen oder bearbeiten Sie ~/.xsessionrc für den Benutzer und fügen Sie hinzu:
export XDG_SESSION_TYPE=x11
Stellen Sie außerdem sicher, dass der Benutzer nicht gleichzeitig in einer lokalen Desktop-Sitzung angemeldet ist — melden Sie sich von der lokalen Sitzung ab, bevor Sie sich über xrdp verbinden.
Authentifizierungsfehler bei xrdp — stellen Sie sicher, dass Sie sich mit einem gültigen Ubuntu-Systembenutzer und -Passwort anmelden, nicht mit dem VNC-Passwort.
xrdp verbindet sich, trennt aber sofort wieder — überprüfen Sie den Status beider Dienste:
systemctl status xrdp systemctl status xrdp-sesman
GNOME lässt sich nicht über VNC starten — unter Ubuntu 24.04 müssen Sie möglicherweise das Paket xorg separat installieren: apt install xorg -y