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

Wenn Sie Ihren Desktop über LAN oder das Internet unter Linux freigeben möchten, ist eine der besten Möglichkeiten, einen VNC-Server zu hosten. Es gibt viele verschiedene VNC-Lösungen für die Desktopfreigabe unter Linux. In diesem Artikel gehen wir auf TigerVNC ein. Es bietet eine zuverlässige VNC-Serverlösung, ist einfach zu installieren und wird von mehreren Linux-Versionen unterstützt.

SPOILER-WARNUNG: Scrollen Sie nach unten und sehen Sie sich das Video-Tutorial am Ende dieses Artikels an.

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

Holen Sie sich das TigerVNC-Paket von der OpenSUSE-Build-Service-Seite. Alle modernen Versionen von SUSE werden unterstützt. Klicken Sie zur Installation auf die Schaltfläche 1-Klick-Installation.

Andere Linuxe

TigerVNC ist eine der am häufigsten verwendeten VNC-Plattformen unter Linux. Das bedeutet, dass Ihre Distribution wahrscheinlich unterstützt wird und dass ein installierbares Paket verfügbar ist. Suchen Sie im Paketmanager Ihrer Linux-Distribution nach „tiger vnc“ und „tiger vnc server“. Installieren Sie sie und fahren Sie mit dieser Anleitung fort.

Sie können ein Paket nicht finden? Gehen Sie zu den offizielle Website um zu erfahren, wie man stattdessen eine Binärdatei oder den Quellcode erhält.

Konfiguration

TigerVNC konfiguriert Dinge automatisch und macht sie einsatzbereit. Um den Serverkonfigurationsprozess zu starten, öffnen Sie ein Terminalfenster. Verwenden Sie im Terminalfenster den folgenden Befehl:

vncserver

Während dieser Befehl innerhalb des Terminals ausgeführt wird, fragt die Eingabeaufforderung nach einem Passwort, um über VNC auf Ihre Desktops zuzugreifen. Gehen Sie in einem Webbrowser zu starker Passwortgenerator, und generieren Sie ein sicheres Passwort. Dies ist von entscheidender Bedeutung, insbesondere wenn Sie planen, Ihre VNC-Verbindungen ins Internet zu leiten.

  So migrieren Sie Ext2- oder Ext3-Dateisysteme zu Ext4 unter Linux

Geben Sie das Passwort in die Eingabeaufforderung ein, und die Konfigurationsdatei wird sich selbst generieren und unter ~/.vnc speichern.

Ausführen des Servers

Standardmäßig wird der gerade eingerichtete VNC-Server nur ausgeführt, wenn Sie ein Terminal öffnen und den Befehl vncserver ausführen. Da die Dinge bereits konfiguriert sind, startet das Tool alles und gibt die Adresse aus, mit der eine Verbindung über das LAN hergestellt werden soll.

vncserver

Hinweis: Um VNC über das Internet auszuführen, lesen Sie im Handbuch Ihres Routers nach und leiten Sie Port 111 weiter.

Autorun mit Systemd

Das Ausführen des Servers mit einem Befehl ist nett, wenn Sie nur hier und da einen schnellen Zugriff benötigen. Wenn Sie jedoch eine ständige Verbindung benötigen, ist es am besten, VNC zu ermöglichen, ständig über Ihr Init-System ausgeführt zu werden. Da die meisten modernen Linux-Betriebssysteme systemd verwenden, wird dies in diesem Beispiel behandelt.

Wenn Ihr Linux-Betriebssystem das systemd-Init-System nicht verwendet, müssen Sie den Befehl „vncserver“ zum Start über xinitrc oder etwas Ähnliches hinzufügen.

Aktivieren Sie den Server so, dass er beim Start mit dem folgenden systemd-Befehl ausgeführt wird.

systemctl --user enable [email protected]:1

Führen Sie diesen Befehl nicht außerhalb des Benutzermodus aus, da dies ein Sicherheitsproblem darstellen könnte. Aktivieren Sie außerdem nicht die ständige Ausführung des VNC-Servers, wenn Sie anderen in Ihrem Netzwerk nicht vertrauen.

  Was ist ein TTY unter Linux? (und wie man den tty-Befehl verwendet)

Töten des VNC-Servers

Manchmal kann TigerVNC Fehler verursachen und durcheinander bringen. Wenn Sie den Server zu irgendeinem Zeitpunkt beenden müssen, verwenden Sie diesen Befehl.

vncserver -kill :1

Denken Sie daran, dass dieser Befehl jeweils nur eine laufende Instanz beendet. Wenn Sie mehrere Versionen des Servers gleichzeitig ausführen, müssen Sie dies im Befehl angeben. Ersetzen Sie dazu die :1 durch die Nummer, die Ihnen der Server beim Start mit dem Befehl gegeben hat.

Starten Ihrer Desktop-Umgebung

Nur weil Sie sich mit Ihrem VNC-Server verbinden können, bedeutet das nicht, dass etwas passieren wird. Damit etwas passiert, wenn Sie sich anmelden, müssen Sie es in einer Autostart-Datei angeben. Erstellen Sie eines, indem Sie zu einem Terminal gehen und Folgendes eingeben:

echo '#!/bin/sh' > ~/.vnc/xstartup

chmod u+x ~/.vncxstartup

Suchen Sie als Nächstes den Code zum Starten der Desktopumgebung. Um diesen Code zu finden, öffnen Sie einen anderen Terminal-Tab und gehen Sie mit dem cd-Befehl in das xsessions-Verzeichnis.

cd /usr/share/xsessions/

Verwenden Sie in diesem Ordner LS, um alles darin anzuzeigen. Hier befinden sich alle Sitzungsdateien für Desktop-Umgebungen. In diesem Beispiel verwenden wir den LXDE-Desktop, aber das Konzept ist für jede Desktop-Umgebung gleich.

Zeigen Sie mit cat und grep den Befehl in der xsession Desktop-Datei an.

cat LXDE.desktop | grep "Exec="

Wenn Sie den cat-Befehl für diese Sitzungsdatei ausführen, wird der Startbefehl für LXDE angezeigt:

Exec=/usr/bin/startlxde

Vergessen Sie „Exec=“ und konzentrieren Sie sich einfach auf „/usr/bin/lxde“. Fügen Sie diesen neu entdeckten Code mit dem Nano-Texteditor in die Startdatei ein und drücken Sie Strg + O, um ihn zu speichern.

nano ~/.vnc/xstartup

exec /usr/bin/startlxde &

Dieser Prozess funktioniert mit jeder Desktop-Umgebungssitzung innerhalb von /usr/share/xsessions/.

  So ermitteln Sie das aktuelle Benutzerkonto unter Linux

Verbindung zu einem laufenden Server herstellen

Die Verbindung zu einem laufenden VNC-Server im Netzwerk ist sehr einfach. Denken Sie zunächst daran, dass jedes Mal, wenn Sie eine Instanz des VNC-Servers ausführen, eine 1 erstellt wird. Die erste Instanz des Servers (auch bekannt als nur einmaliges Ausführen des Befehls) erstellt:

example-linux-pc:1

Wenn Sie es 4 Mal in 4 separaten Terminals ausführen, wird Folgendes erstellt:

example-linux-pc:1

example-linux-pc:2

example-linux-pc:3

example-linux-pc:4

Solange sich der Computer, der eine Verbindung zur Sitzung herstellen möchte, und der Computer, der die Sitzung hostet, im selben Netzwerk befinden, kann eine Verbindung nur mit dem Hostnamen hergestellt werden. Um eine Verbindung herzustellen, öffnen Sie ein Terminal und geben Sie den folgenden Befehl ein.

vncviewer example-linux-pc:1

Nachdem Sie den Befehl in die Eingabeaufforderung eingegeben haben, öffnet sich das TigerVNC-GUI-Tool und fragt nach einem Passwort. Geben Sie das Passwort ein, das Sie während des Einrichtungsvorgangs eingegeben haben, um eine Verbindung herzustellen.

Verbinden Sie sich stattdessen mit der GUI

Sie möchten keine Verbindung über die Befehlszeile herstellen? Öffnen Sie in diesem Fall den Tiger VNC-Viewer und geben Sie die Serveradresse in die Eingabeaufforderung ein. Geben Sie das Passwort ein, zu dessen Eingabe Sie beim Start aufgefordert wurden.