So richten Sie die VNC-Desktopfreigabe unter Linux mit TigerVNC ein

Möchten Sie Ihren Linux-Desktop über ein lokales Netzwerk (LAN) oder das Internet zugänglich machen? Eine bewährte Methode hierfür ist die Verwendung eines VNC-Servers. Es existiert eine Vielzahl von VNC-Lösungen für Linux, aber in diesem Artikel konzentrieren wir uns auf TigerVNC. Diese Software zeichnet sich durch ihre Stabilität und einfache Installation aus und ist mit einer Vielzahl von Linux-Distributionen kompatibel.

Hinweis: Am Ende dieses Artikels finden Sie ein Video-Tutorial.

Installation auf verschiedenen Linux-Distributionen

Ubuntu

sudo apt install tigervnc-standalone-server tigervnc-viewer

Debian

sudo apt-get install tigervnc-standalone-server tigervnc-viewer

Arch Linux

sudo pacman -S tigervnc

Fedora

sudo dnf install tigervnc-server

OpenSUSE

Das TigerVNC-Paket für OpenSUSE finden Sie auf der OpenSUSE-Build-Service-Seite. Alle modernen SUSE-Versionen werden unterstützt. Klicken Sie einfach auf den „1-Klick-Installation“-Button, um das Paket zu installieren.

Andere Linux-Distributionen

TigerVNC ist eine der populärsten VNC-Plattformen für Linux. Es ist sehr wahrscheinlich, dass Ihre Distribution ebenfalls unterstützt wird und entsprechende Pakete verfügbar sind. Suchen Sie in Ihrem Paketmanager nach „tiger vnc“ und „tiger vnc server“ und installieren Sie diese, falls vorhanden. Anschließend können Sie dieser Anleitung folgen.

Sollten Sie kein passendes Paket finden, besuchen Sie die offizielle Website, um alternative Installationsmethoden wie Binärdateien oder Quellcode zu finden.

Konfiguration von TigerVNC

TigerVNC ist darauf ausgelegt, sich automatisch zu konfigurieren und sofort einsatzbereit zu sein. Um den Konfigurationsprozess zu starten, öffnen Sie ein Terminal und führen Sie folgenden Befehl aus:

vncserver

Während der Ausführung dieses Befehls werden Sie aufgefordert, ein Passwort für den VNC-Zugriff festzulegen. Es ist empfehlenswert, ein starkes Passwort zu verwenden, insbesondere wenn Sie planen, VNC-Verbindungen über das Internet zu ermöglichen. Einen geeigneten Passwortgenerator finden Sie beispielsweise unter starker Passwortgenerator.

Nachdem Sie das Passwort eingegeben haben, wird die Konfigurationsdatei automatisch generiert und unter `~/.vnc` gespeichert.

Starten des Servers

Standardmäßig muss der VNC-Server jedes Mal über den Befehl `vncserver` gestartet werden. Da die Konfiguration bereits abgeschlossen ist, wird der Server gestartet und die Adresse ausgegeben, unter der eine Verbindung über das LAN hergestellt werden kann.

vncserver

Hinweis: Um VNC über das Internet nutzen zu können, müssen Sie möglicherweise Port 111 in Ihrem Router weiterleiten.

Automatischer Start mit Systemd

Das manuelle Starten des Servers per Befehl ist für gelegentliche Verbindungen geeignet. Wenn Sie jedoch eine dauerhafte Verbindung benötigen, ist es ratsam, den VNC-Server über das Init-System automatisch starten zu lassen. Die meisten modernen Linux-Systeme verwenden systemd. Daher wird dieser Ansatz hier erläutert.

Wenn Ihr System nicht systemd verwendet, müssen Sie den `vncserver`-Befehl in eine Datei wie `xinitrc` einfügen, um den automatischen Start zu erreichen.

Um den Server beim Systemstart zu aktivieren, verwenden Sie folgenden systemd-Befehl:

systemctl --user enable [email protected]:1

Achtung: Führen Sie diesen Befehl nicht außerhalb des Benutzermodus aus, da dies ein Sicherheitsrisiko darstellen kann. Aktivieren Sie den automatischen Start des VNC-Servers nur, wenn Sie den Benutzern in Ihrem Netzwerk vertrauen.

Beenden des VNC-Servers

Gelegentlich kann es vorkommen, dass TigerVNC nicht korrekt funktioniert. Um den Server zu beenden, verwenden Sie folgenden Befehl:

vncserver -kill :1

Dieser Befehl beendet jeweils nur eine laufende Instanz des Servers. Wenn Sie mehrere Serverinstanzen gleichzeitig betreiben, müssen Sie die entsprechende Servernummer angeben (ersetzen Sie `:1` durch die Nummer, die Ihnen beim Start des Servers angezeigt wurde).

Starten der Desktop-Umgebung

Eine VNC-Verbindung alleine reicht nicht aus, um eine grafische Desktop-Umgebung zu starten. Dafür muss eine Autostart-Datei konfiguriert werden. Erstellen Sie diese Datei mit den folgenden Befehlen im Terminal:

echo '#!/bin/sh' > ~/.vnc/xstartup
chmod u+x ~/.vncxstartup

Als nächstes benötigen Sie den Befehl zum Starten Ihrer Desktop-Umgebung. Diesen finden Sie im Verzeichnis `xsessions`. Verwenden Sie im Terminal die folgenden Befehle:

cd /usr/share/xsessions/

Hier finden Sie alle Sitzungsdateien Ihrer Desktop-Umgebungen. In diesem Beispiel wird der LXDE-Desktop verwendet, aber das Prinzip ist für jede Desktop-Umgebung gleich.

Verwenden Sie `cat` und `grep`, um den Startbefehl der entsprechenden xsession-Datei zu ermitteln:

cat LXDE.desktop | grep "Exec="

Die Ausgabe dieses Befehls sollte den Startbefehl für LXDE enthalten, z.B.:

Exec=/usr/bin/startlxde

Ignorieren Sie „Exec=“ und konzentrieren Sie sich auf „/usr/bin/startlxde“. Fügen Sie diesen Befehl mit einem Texteditor wie `nano` in die Autostart-Datei ein und speichern Sie diese anschließend (Strg + O):

nano ~/.vnc/xstartup
exec /usr/bin/startlxde &

Dieser Prozess funktioniert analog für jede Desktop-Umgebungssitzung im Verzeichnis `/usr/share/xsessions/`.

Verbindungsaufbau zum laufenden Server

Die Verbindung zu einem VNC-Server ist einfach. Bedenken Sie, dass jede Serverinstanz eine fortlaufende Nummer erhält. Die erste Instanz wird als `:1` geführt, die zweite als `:2` usw. Ein Beispiel:

example-linux-pc:1
example-linux-pc:2
example-linux-pc:3
example-linux-pc:4

Solange sich der Computer, der die Verbindung aufbauen möchte, und der Server im selben Netzwerk befinden, können Sie die Verbindung über den Hostnamen aufbauen. Verwenden Sie folgenden Befehl im Terminal:

vncviewer example-linux-pc:1

Nach Ausführung dieses Befehls öffnet sich das TigerVNC-GUI-Tool und fordert Sie zur Eingabe des Passworts auf, das Sie während der Konfiguration festgelegt haben.

Verbindung mit der grafischen Benutzeroberfläche

Wenn Sie die Verbindung nicht über die Befehlszeile herstellen möchten, öffnen Sie den TigerVNC-Viewer und geben Sie dort die Serveradresse ein. Auch hier werden Sie zur Eingabe des Passworts aufgefordert.