Website-Suche

So installieren Sie den VNC-Server auf RHEL 8/CentOS 8


Die Remote-Verbindung zu Computern ist so alt wie Computernetzwerke. Der Zugriff auf die grafische Oberfläche (GUI) ist eine bequeme Möglichkeit, auf einem Remote-Desktop zu arbeiten. Wir können unsere grafischen Programme laufen und arbeiten lassen, und wir müssen die Sitzung nicht offen halten – wir stellen einfach die Verbindung wieder her, wenn wir Lust dazu haben.

Der VNC-Server ist ein bekannter grafischer Sitzungsserver, der Remote-Verbindungen ermöglicht, die wir mit einem nicht privilegierten Benutzer ausführen können. Auf diese Weise können viele Benutzer aus der Ferne auf ihren eigenen Desktop auf demselben Computer zugreifen und blockieren sich nicht gegenseitig (abgesehen davon, dass sie möglicherweise die Ressourcen des entfernten Computers verbrauchen).

In diesem Tutorial lernen Sie:

  • So installieren Sie die erforderlichen Pakete.
  • Einrichten und Starten des VNC-Servers unter RHEL 8.
  • So stellen Sie eine Remote-Verbindung zu einer grafischen Sitzung her.
  • Ausführen von grafischen Programmen in der xterm-Sitzung.

VNC-Anbindung an RHEL8 mit Remmina.

Verwendete Softwareanforderungen und Konventionen

KategorieAnforderungen, Konventionen oder verwendete Softwareversion
SystemRed Hat Enterprise Linux 8
SoftwareTigervnc-Server 1.9
AnderePrivilegierter Zugriff auf Ihr Linux-System als root oder über den Befehl sudo.

So installieren Sie den VNC-Server auf RHEL 8 Schritt für Schritt

Es gibt viele Fenstermanager, die wir mit dem VNC-Server verwenden können, aber für die Zwecke dieses Tutorials werden wir eine einfache xterm-Sitzung einrichten, da sich xterm in den Basis-Repositories von Red Hat Enterprise Linux 8 befindet. Wir zeigen jedoch, dass dieser einfache Ausgangspunkt mit einem einfachen Trick die volle Funktionalität ermöglicht. Beachten Sie auch, dass es viel ausgefeiltere Fenstermanager gibt, wie xfce, aber das würde den Rahmen dieses Tutorials sprengen.

  1. Zuerst müssen wir die erforderlichen Pakete für die Serveranwendung installieren:

    dnf install tigervnc-server xterm
  2. Als nächstes müssen wir die Firewall für den Dienst öffnen. Um zu überprüfen, welche Dienste derzeit erlaubt sind, listen wir die aktivierten Dienste auf:

    firewall-cmd --list-services
    cockpit dhcpv6-client ssh

    Öffnen Sie den vnc-server-Dienst:

    firewall-cmd --permanent --zone=public --add-service vnc-server
    success

    Wenden Sie die Konfigurationsänderung an:

    firewall-cmd --reload

    Und listen Sie die Dienste erneut auf, um Folgendes zu überprüfen:

    firewall-cmd --list-services
    cockpit dhcpv6-client ssh vnc-server

    WARNUNG
    Öffnen Sie den VNC-Dienst Ihres Computers nicht für die Öffentlichkeit! Die obige Firewallregel wird in einer geschlossenen Umgebung ausgeführt und dient nur zu Demonstrationszwecken. Stellen Sie sicher, dass Sie sich über die Risiken im Klaren sind, bevor Sie etwas auf einem Server mit Internetzugriff oder sogar auf einem Desktop öffnen.

  3. Wir müssen die Umgebung einrichten, in der der Server ausgeführt wird. In diesem Beispiel besteht unser Ziel darin, den Server mit einem angegebenen Benutzer testuser auszuführen, der keine Root-Rechte hat. Beachten Sie, dass dieser Schritt mit dem Benutzer ausgeführt wird, der den Server ausführt, und nicht mit root. Wir haben ein Passwort eingerichtet, das die Verbindung ermöglicht (das nichts mit dem Passwort des Benutzers zu tun hat, das mit ssh verwendet wird):

    vncpasswd 
    Password:
    Verify:
    Would you like to enter a view-only password (y/n)? n

    In diesem Beispiel sind keine schreibgeschützten Anmeldungen erforderlich. Als nächstes bearbeiten wir die Textdatei /home/testuser/.vnc/xstartup mit einem Texteditor wie nano. Die Datei sollte nach der Installation leer sein, und wir fügen nur einen minimalen Inhalt hinzu, um die xterm-Sitzung bei der Verbindung zu starten. Wir fügen der leeren Datei die folgende Zeile hinzu:

    xterm -geometry 1044x810+10+10 &

    Passen Sie die Geometrieparameter so an, dass sie in Ihren Bildschirm passen. Nun können wir den Server starten:

    vncserver 
    
    New 'rhel8beta.lab:1 (testuser)' desktop is rhel8beta.home.hu:1
    
    Starting applications specified in /home/testuser/.vnc/xstartup
    Log file is /home/testuser/.vnc/rhel8beta.lab:1.log

    Wie die Ausgabe andeutet, können wir den vom Server bereitgestellten Protokollen in den Protokolldateien unter /home/<username>/.vnc/<hostname>:1.log folgen, dieser Dateiname ändert sich, wenn mehr als ein VNC-Server läuft (ebenso wie der Port, den Sie für die Verbindung benötigen). Die Protokolldatei gibt auch an, auf welchem Port der Server lauscht:

    vncext:      Listening for VNC connections on all interface(s), port 5901

    Dies ist der Standard-VNC-Port.

  4. Wir können viele VNC-Clients verwenden, um uns mit dem nun gestarteten Server zu verbinden. Remmina ist ein Client, der standardmäßig mit aktuellen Gnome-Desktops ausgeliefert wird und SSH-, RDP- und VNC-Sitzungen verarbeiten kann. Wir müssen den Hostnamen oder die IP-Adresse des Hosts, auf dem der VNC-Server läuft, sowie den Port angeben. Im folgenden Beispiel wird 192.168.1.14 als Adresse verwendet, und der Standardport 5901, den wir im vorherigen Schritt in der Protokolldatei des Servers gefunden haben. Wir müssen "VNC" als Protokoll neben dem Adressfeld auswählen und das Passwort eingeben, das wir zuvor mit vncpasswd angegeben haben.

    Verbindung zu tigervnc mit Remmina.

    Wenn alles wie erwartet funktioniert, sind wir mit dem VNC-Server verbunden und führen xterm aus, akzeptieren und bereitstellen Zwischenablageinhalte, geschützt vor Netzwerkfehlern. Das obere Beispiel unten wird ohne Unterbrechung ausgeführt, wenn wir die Verbindung zur Sitzung trennen und die Verbindung später wiederherstellen.

    Läuft top ohne Unterbrechung aus der Ferne.

  5. Während diese Schritte im Grunde zeigen, wie man den VNC-Server einrichtet und sich mit ihm verbindet, macht es nicht viel Sinn, top auf einer entfernten xterm-Sitzung auszuführen, da wir dies mit viel weniger Aufwand mit ssh und einem Sitzungsserver wie screen tun könnten. Um die Leistungsfähigkeit eines solch einfachen xterm-Setups zu sehen, geben Sie einfach gedit auf der entfernten xterm-Konsole ein (vorausgesetzt, ein Gnome-Desktop ist installiert).

    Ausführen von grafischen Programmen innerhalb von xterm.

    Ein leeres Dokument wird in gedit angezeigt, genau wie jedes grafische Programm, wenn es von der Kommandozeile aus gestartet wird. Beachten Sie, dass das Dokument, das remote bearbeitet wird, und das Programm, das es geöffnet hält, ebenfalls durch die VNC-Sitzung geschützt sind. Ein Netzwerkausfall hat keine Auswirkungen, wir können einfach die Verbindung wiederherstellen und die Arbeit an dem Text fortsetzen, auch wenn auf unserem Client-Computer ein nicht behebbarer Fehler auftritt und wir vergessen haben, unsere Arbeit in den letzten Stunden zu speichern. Natürlich schützt der VNC-Server nicht vor dem Ausfall des Rechners, auf dem er läuft.

Verwandte Artikel: