VNC-Server unter Ubuntu 24.04 einrichten: Schritt für Schritt
Mit einem VNC-Server können Sie unter Ubuntu 24.04 eine grafische Desktopoberfläche aus der Ferne steuern und Ihren Server komfortabel per Remote-Zugriff verwalten. Die Einrichtung ermöglicht es Ihnen, Programme zu bedienen, Einstellungen vorzunehmen oder Dateien zu verwalten, als säßen Sie direkt vor dem Rechner.
Schritt 1: Voraussetzungen prüfen
Für die Installation eines VNC-Servers benötigen Sie zunächst ein geeignetes System wie Ubuntu 24.04 und Zugriff auf das Terminal. Der Zugriff kann lokal oder per SSH erfolgen, beispielsweise über einen VPS oder einen Dedicated Server. Außerdem sollten Sie über ein Benutzerkonto mit sudo-Rechten verfügen, damit sich benötigte Pakete installieren lassen.
Damit die grafische Fernsteuerung funktioniert, muss eine Desktopumgebung vorhanden sein. Falls auf Ihrem Server noch keine grafische Oberfläche installiert ist, können Sie beispielsweise eine schlanke Umgebung wie XFCE nachinstallieren. Diese benötigt deutlich weniger Ressourcen als umfangreiche Desktops wie GNOME und eignet sich daher besonders gut für Server.
Zusätzlich benötigen Sie einen VNC-Client auf Ihrem lokalen Rechner. Programme wie RealVNC Viewer oder TigerVNC Viewer ermöglichen die Verbindung zum Server über die IP-Adresse. Eine Freigabe des VNC-Ports in der Firewall ist nicht erforderlich, wenn Sie die Verbindung über einen SSH-Tunnel herstellen.
- 1 Gbit/s, unbegrenzt Traffic & mehr Cores
- Mindestens 99,99% Verfügbarkeit & ISO-zertifizierte Rechenzentren
- Ausgezeichneter 24/7 Premium-Support mit persönlichem Berater
Schritt 2: System aktualisieren
Stellen Sie vor Beginn der Installation sicher, dass Ihr System auf dem aktuellen Stand ist. Nutzen Sie hierzu folgende Terminalbefehle:
sudo apt update
sudo apt upgrade -ybashSchritt 3: TigerVNC installieren
Unter Ubuntu 24.04 empfiehlt sich die Nutzung von TigerVNC, da dieses Paket aktiv gepflegt wird und eine stabile Verbindung ermöglicht. Die Open-Source-Software eignet sich zur Einrichtung von VNC-Servern und ermöglicht den Zugriff auf eine grafische Linux-Oberfläche. Sie gilt als stabil, performant und wird regelmäßig gepflegt. TigerVNC unterstützt verschlüsselte Verbindungen und lässt sich vergleichsweise einfach konfigurieren, weshalb die Lösung auch für Einsteigerinnen und Einsteiger gut geeignet ist. Installieren Sie den VNC-Server mit folgendem Befehl:
sudo apt install tigervnc-standalone-server tigervnc-common -ybashNach der Installation steht der Befehl vncserver zur Verfügung.
Schritt 4: VNC-Passwort festlegen
Starten Sie den VNC-Server zum ersten Mal, um ein sicheres Passwort zu vergeben:
vncpasswdbashSie werden aufgefordert, ein Passwort festzulegen, wobei nur die ersten acht Zeichen berücksichtigt werden. Anschließend können Sie optional ein reines Ansichtspasswort festlegen.
Nach dem ersten Start wird automatisch eine grundlegende Konfiguration erstellt. Beenden Sie anschließend die Sitzung wieder:
vncserver :1
vncserver -kill :1bashSchritt 5: VNC-Startkonfiguration erstellen
Damit beim Start automatisch die gewünschte Desktopumgebung geladen wird, erstellen Sie eine Konfigurationsdatei. Wir nutzen hierzu den Texteditor nano, Sie können aber jeden beliebigen Texteditor hierzu nutzen.
nano ~/.vnc/xstartupbashFügen Sie folgenden Inhalt in die Datei ein:
#!/bin/bash
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
[ -r "$HOME/.Xresources" ] && xrdb "$HOME/.Xresources"
exec startxfce4txtSpeichern Sie anschließend die Datei und beenden Sie den Editor. Die Konfiguration sorgt dafür, dass beim Aufbau einer Verbindung automatisch die XFCE-Oberfläche gestartet wird. Machen Sie die Datei nun mit folgendem Befehl ausführbar:
chmod +x ~/.vnc/xstartupbashSchritt 6: VNC-Server starten
Starten Sie nun den VNC-Server erneut:
vncserver :1bashMit diesem Befehl wird eine neue VNC-Sitzung mit der Display-Nummer :1 gestartet. Jede Display-Nummer entspricht dabei einer eigenen grafischen Sitzung und einem festen Netzwerkport.
Nach dem Start sollten Sie eine Beispielausgabe ähnlich der folgenden sehen:
new Xtigervnc server 'server:1 (user)' on port 5901bashDie Anzeige :1 entspricht dem Netzwerkport 5901, über den die Verbindung hergestellt wird. Die Portnummer ergibt sich aus der Display-Nummer: Display :1 verwendet Port 5901, Display :2 würde beispielsweise Port 5902 verwenden. Diese Angaben benötigen Sie später für die Verbindung mit Ihrem VNC-Client.
Schritt 7: Verbindung zum VNC-Server herstellen
Um eine sichere Verbindung zum VNC-Server herzustellen, wird ein sogenannter SSH-Tunnel verwendet. Dabei wird die VNC-Verbindung durch eine verschlüsselte SSH-Verbindung geleitet, sodass der VNC-Port nicht direkt im Internet erreichbar sein muss. Öffnen Sie zunächst ein Terminal auf Ihrem lokalen Rechner und stellen Sie die Verbindung zum Server mit folgendem Befehl her:
ssh -L 5901:localhost:5901 USERNAME@IP-ADRESSEbashDie SSH-Verbindung muss während der gesamten Nutzung aktiv bleiben, da der Tunnel sonst geschlossen wird. Wenn Sie die Verbindung trennen, wird auch die VNC-Sitzung im Client unterbrochen.
Ersetzen Sie USERNAME durch Ihren Benutzernamen auf dem Server und IP-ADRESSE durch die öffentliche IP-Adresse Ihres Servers. Nach erfolgreicher Anmeldung bleibt die SSH-Verbindung aktiv und leitet alle Anfragen von Ihrem lokalen Port 5901 an den VNC-Server auf dem Zielsystem weiter.
Starten Sie anschließend den VNC-Client und geben Sie folgende Adresse ein:
localhost:5901bashAlternativ können einige VNC-Clients auch die kürzere Schreibweise verwenden:
localhost:1bashBeide Varianten verweisen auf dieselbe VNC-Sitzung. Nach dem Verbindungsaufbau werden Sie zur Eingabe des zuvor festgelegten VNC-Passworts aufgefordert. Anschließend sollte die grafische Desktopoberfläche Ihres Ubuntu-Systems im VNC-Fenster erscheinen und kann wie ein normaler Desktop bedient werden.
TigerVNC unterstützt verschlüsselte Verbindungen über TLS (z. B. Security-Type TLSVnc), die jedoch explizit über die Option -SecurityTypes aktiviert werden müssen. Ohne diese Angabe nutzt der tigervncserver-Wrapper nur VncAuth und lauscht standardmäßig ausschließlich auf localhost (127.0.0.1), der VNC-Port ist also von außen nicht direkt erreichbar. Erst mit -localhost no wird der Dienst auf allen Netzwerkinterfaces geöffnet. Für den Fernzugriff empfiehlt sich deshalb der SSH-Tunnel: Er erlaubt die Verbindung, ohne den VNC-Port nach außen öffnen zu müssen, und sichert die Übertragung zusätzlich durch Verschlüsselung und starke Authentifizierung ab.
Schritt 8: VNC-Server automatisch starten (optional)
Damit der VNC-Server nach einem Neustart automatisch verfügbar ist, können Sie einen sogenannten systemd-Dienst einrichten. Dadurch startet die VNC-Sitzung automatisch beim Hochfahren des Systems, ohne dass Sie den Server manuell starten müssen. Erstellen Sie zunächst eine Service-Datei:
sudo nano /etc/systemd/system/vncserver@.servicebashFügen Sie in die erstellte Datei den folgenden Inhalt ein:
[Unit]
Description=VNC Server
After=network.target
[Service]
Type=forking
User=USERNAME
WorkingDirectory=/home/USERNAME
ExecStart=/usr/bin/vncserver -geometry 1280x800 -localhost yes :%i
ExecStop=/usr/bin/vncserver -kill :%i
Restart=on-failure
PIDFile=/home/USERNAME/.vnc/%H:%i.pid
[Install]
WantedBy=multi-user.targettxtErsetzen Sie dabei USERNAME durch Ihren tatsächlichen Benutzernamen auf dem Server. Auf diese Weise wird sichergestellt, dass der VNC-Server mit dem richtigen Benutzerkonto gestartet wird. Laden Sie anschließend die systemd-Konfiguration neu und aktivieren Sie den Dienst:
sudo systemctl daemon-reload
sudo systemctl enable vncserver@1bashStarten Sie den Dienst anschließend manuell:
sudo systemctl start vncserver@1bashMit folgendem Befehl können Sie prüfen, ob der Dienst korrekt läuft:
sudo systemctl status vncserver@1bashWenn der Dienst aktiv ist, steht Ihnen der VNC-Server nach jedem Neustart automatisch zur Verfügung. Sie können sich dann jederzeit per Remote-Desktop verbinden und die grafische Oberfläche Ihres Ubuntu-Systems bequem aus der Ferne nutzen.

