Ubuntu-Remote-Desktop (GUI)
Ubuntu Server verfügt standardmäßig nicht über eine grafische Benutzeroberfläche. Sie können jedoch eine solche installieren und über VNC oder RDP eine Fernverbindung herstellen. Diese Anleitung behandelt beide Methoden.
Machen Sie die Ports 5901 (VNC) oder 3389 (RDP) nicht direkt für das Internet zugänglich. Verwenden Sie einen SSH-Tunnel, WireGuard oder eine andere VPN-Lösung, um die Verbindung zu sichern. Wenn Sie diese Ports durch die Firewall lassen müssen, beschränken Sie den Zugriff ausschließlich auf vertrauenswürdige IP-Bereiche.
Für die meisten Ubuntu-Server im Produktivbetrieb lautet die empfohlene Kombination: Xfce-Desktopumgebung, xrdp für den Fernzugriff und 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 die Verbindung hergestellt werden soll
Installieren Sie eine Desktop-Umgebung
Aktualisieren Sie die Paketliste:
apt update && apt upgrade -y
Installieren Sie die Minimalversion des GNOME-Desktops:
apt install ubuntu-desktop-minimal -y
Für Produktionsserver wird im Allgemeinen Xfce empfohlen – es beansprucht weniger Ressourcen und funktioniert über VNC und xrdp zuverlässiger:
apt install xfce4 xfce4-goodies -y
Nachdem die Installation abgeschlossen ist, legen Sie das Standard-Startziel auf den grafischen Modus fest und starten Sie den Rechner neu:
systemctl set-default graphical.target reboot
Der Befehl `systemctl set-default graphical.target` ändert den Standard-Startmodus dauerhaft, sodass die grafische Umgebung nach jedem Neustart automatisch gestartet wird. Auf einem Server ohne Bildschirm, bei dem Sie nur einen Remote-Desktop-Zugriff benötigen, können Sie diesen Schritt überspringen und einfach einen Neustart durchführen.
Option 1. Verbindung über VNC
Mit VNC (Virtual Network Computing) können Sie den Desktop aus der Ferne anzeigen und steuern. In diesem Abschnitt wird TigerVNC verwendet.
TigerVNC-Server installieren
apt install tigervnc-standalone-server tigervnc-common -y
VNC-Benutzer anlegen
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 zur sudo-Gruppe hinzu. Sollte ein Angreifer Zugriff auf die VNC-Sitzung erlangen, würde ihm der sudo-Zugriff die vollständige Kontrolle über den Server verschaffen.
Wechseln Sie zu diesem Benutzer:
su - vncuser
Legen Sie ein VNC-Passwort fest
vncpasswd
Geben Sie ein Passwort ein und bestätigen Sie es. Wenn Sie gefragt werden: „Möchten Sie ein Passwort für den Lesezugriff eingeben?“, geben Sie „n“ ein.
VNC benötigt ein Xorg-Backend. Unter Ubuntu 24.04 läuft GNOME standardmäßig auf Wayland. Wenn du VNC mit GNOME nutzen möchtest, deaktiviere zunächst Wayland wie im Abschnitt „xrdp“ weiter unten beschrieben (WaylandEnable=false in /etc/gdm3/custom.conf). Andernfalls erscheint möglicherweise ein schwarzer Bildschirm.
Unter Ubuntu 24.04 ist „dbus-launch“ möglicherweise nicht standardmäßig installiert. Wenn beim Starten der VNC-Sitzung die Fehlermeldung „Befehl nicht gefunden“ erscheint, installieren Sie es zunächst: ` apt install dbus-x11 -y`
Konfigurieren Sie die VNC-Sitzung
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
Starten Sie den VNC-Server
vncserver :1 -geometry 1920x1080 -depth 24
Dadurch wird eine VNC-Sitzung auf Bildschirm :1 (Port 5901) gestartet. Bildschirm :2 würde Port 5902 verwenden und so weiter.
So beenden Sie den Server:
vncserver -kill :1
Öffnen Sie den Firewall-Port
ufw allow 5901/tcp
Schränken Sie den Zugriff nach Möglichkeit auf einen bestimmten IP-Bereich ein, anstatt alle Quellen zuzulassen: ufw allow from 192.168.1.0/24 to any port 5901 proto tcp
Verbindung von Windows herstellen
Laden Sie TightVNC oder RealVNC Viewer herunter und installieren Sie es.
Öffnen Sie den Client und geben Sie Folgendes ein: Ihre-Server-IP:5901

Geben Sie das VNC-Passwort ein, wenn Sie dazu aufgefordert werden. Sobald die Verbindung hergestellt ist, sehen Sie den Remote-Desktop:

Verbindung von macOS herstellen
macOS verfügt über einen integrierten VNC-Client. Öffnen Sie den Finder, drücken Sie Cmd+K und geben Sie Folgendes ein:
vnc://your-server-ip:5901
Geben Sie das Passwort ein, wenn Sie dazu aufgefordert werden.
Der VNC-Datenverkehr ist standardmäßig nicht verschlüsselt. Leiten Sie die Verbindung über SSH weiter: `ssh -L 5901:localhost:5901 user@Ihre-Server-IP`, und stellen Sie dann von Ihrem VNC-Client aus eine Verbindung zu ` localhost:5901 ` her.
Option 2: Verbindung über RDP
RDP (Remote Desktop Protocol) ist das Standardprotokoll, das von Windows Remote Desktop verwendet wird. Unter Ubuntu wird es durch das Paket „xrdp“ bereitgestellt.
GNOME-Sitzungen über xrdp können auf einigen Ubuntu-Versionen instabil sein, insbesondere wenn Wayland aktiviert ist. Xfce bietet im Allgemeinen 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, entfernen Sie das Kommentarzeichen und speichern Sie die Datei:
WaylandEnable=false
xrdp installieren
apt install xrdp -y
Aktivieren und starten Sie den Dienst:
systemctl enable --now xrdp
Fügen Sie den Benutzer „xrdp“ zur Gruppe „ssl-cert“ hinzu
adduser xrdp ssl-cert
Konfigurieren Sie die Startdatei für die Sitzung
Öffnen Sie /etc/xrdp/startwm.sh und fügen Sie die folgenden Zeilen vor der letzten exec -Zeile ein:
export XDG_SESSION_TYPE=x11 export GNOME_SHELL_SESSION_MODE=ubuntu unset DBUS_SESSION_BUS_ADDRESS unset XDG_RUNTIME_DIR
Öffnen Sie den Firewall-Port
ufw allow 3389/tcp
Schränken Sie den Zugriff nach Möglichkeit auf einen bestimmten IP-Bereich ein: ufw allow from 192.168.1.0/24 to any port 3389 proto tcp
Starten Sie xrdp neu
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“.

Lassen Sie auf dem xrdp-Anmeldebildschirm die Sitzung auf „Xorg“ eingestellt und geben Sie Ihren Ubuntu-Benutzernamen und Ihr Passwort ein:

Nach der Anmeldung wird der Remote-Desktop angezeigt:

Verbindung von macOS 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 über xrdp) |
| Windows-Client | Drittanbieter erforderlich | Integriert (mstsc) |
| macOS-Client | Integriert (Finder) | Microsoft Remote Desktop (App Store) |
| Verschlüsselung | Standardmäßig keine (SSH-Tunnel verwenden) | TLS (wird von xrdp verwaltet) |
| Leistung | Mäßig | Im Allgemeinen flüssiger |
| Unterstützung mehrerer Benutzer | Eingeschränkt | Besser |
Fehlerbehebung
Schwarzer Bildschirm nach der 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 anschließend 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 offen ist.
VNC-Sitzung lässt sich nicht starten — Beenden Sie die Sitzung, löschen Sie die Sperrdateien und starten Sie den Dienst anschließend neu:
vncserver -kill :1 rm -f ~/.vnc/*.log ~/.vnc/*.pid vncserver :1
Verbindung bricht ab oder grauer Bildschirm nach Eingabe des Passworts in xrdp – erstellen oder bearbeiten Sie die Datei ~/.xsessionrc für den Benutzer und fügen Sie Folgendes 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 eine Verbindung über xrdp herstellen.
Authentifizierungsfehler in xrdp – stellen Sie sicher, dass Sie sich mit einem gültigen Ubuntu-Benutzernamen und -Passwort anmelden, nicht mit dem VNC-Passwort.
xrdp stellt eine Verbindung her, trennt diese jedoch 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 xorg-Paket separat installieren: apt install xorg -y