Fernverbindungen zu Computern sind so alt wie Computernetzwerke. Der Zugriff auf die grafische Benutzeroberflä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 verbinden uns einfach wieder, wenn wir dazu Lust haben.
Der VNC-Server ist ein bekannter grafischer Sitzungsserver, der Remoteverbindungen ermöglicht, die wir mit einem nicht privilegierten Benutzer ausführen können. Auf diese Weise können viele Benutzer remote auf ihren eigenen Desktop auf demselben Computer zugreifen und blockieren sich nicht gegenseitig (abgesehen davon, dass möglicherweise die Ressourcen des entfernten Computers verbraucht werden).
In diesem Tutorial lernen Sie:
- So installieren Sie erforderliche Pakete.
- Wie man den VNC-Server auf RHEL 8 einrichtet und startet.
- So verbinden Sie sich aus der Ferne mit einer grafischen Sitzung.
- Wie man grafische Programme in der xterm-Sitzung ausführt.
![](https://m.unixlinux.online/article/uploadfiles/202204/2022042507194981.png)
Softwareanforderungen und verwendete Konventionen
Kategorie | Anforderungen, Konventionen oder verwendete Softwareversion |
---|---|
System | Red Hat Enterprise Linux 8 |
Software | Tigervnc-Server 1.9 |
Andere | Privilegierter Zugriff auf Ihr Linux-System als root oder über sudo Befehl. |
Konventionen | # – erfordert, dass bestimmte Linux-Befehle mit Root-Rechten ausgeführt werden, entweder direkt als Root-Benutzer oder durch Verwendung von sudo Befehl$ – erfordert, dass bestimmte Linux-Befehle als normaler, nicht privilegierter Benutzer ausgeführt werden |
Schritt-für-Schritt-Anleitung zur Installation des vnc-Servers auf RHEL 8
Es gibt viele Fenstermanager, die wir mit dem VNC-Server verwenden können, aber für den Zweck dieses Tutorials werden wir eine einfache xterm-Sitzung als xterm
einrichten befindet sich in den Basis-Repositories von Red Hat Enterprise Linux 8. Wir werden jedoch zeigen, dass dieser einfache Ausgangspunkt mit einem einfachen Trick die volle Funktionalität ergibt. Beachten Sie auch, dass es viel ausgefeiltere Fenstermanager gibt, wie xfce
, aber das würde den Rahmen dieses Tutorials sprengen.
- Zuerst müssen wir die erforderlichen Pakete für die Serveranwendung installieren:
dnf install tigervnc-server xterm
- Als nächstes müssen wir die Firewall für den Dienst öffnen. Um zu prüfen, welche Dienste derzeit erlaubt sind, listen wir aktivierte 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 sie zu überprüfen:
# firewall-cmd --list-services cockpit dhcpv6-client ssh vnc-server
WARNUNG
Öffnen Sie den VNC-Dienst Ihres Computers nicht! Die obige Firewall-Regel wird in einer eingeschränkten Umgebung ausgeführt und dient nur zu Demonstrationszwecken. Machen Sie sich unbedingt mit den Risiken vertraut, bevor Sie etwas auf einem mit dem Internet verbundenen Server oder sogar Desktop öffnen. - Wir müssen die Umgebung einrichten, in der der Server ausgeführt wird. In diesem Beispiel ist es unser Ziel, den Server mit einem bestimmten Benutzer
testuser
auszuführen der keinroot
hat Privilegien. Beachten Sie, dass dieser Schritt mit dem Benutzer durchgeführt wird, der den Server ausführt, nicht mitroot
. Wir richten ein Passwort ein, das die Verbindung zulässt (das nichts mit dem Passwort des Benutzers zu tun hat, das mitssh
verwendet wird ):$ vncpasswd Password: Verify: Would you like to enter a view-only password (y/n)? n
In diesem Beispiel benötigen wir keine Nur-Anzeige-Logins. Als nächstes bearbeiten wir
/home/testuser/.vnc/xstartup
Textdatei mit einem Texteditor wienano
. Die Datei sollte nach der Installation leer sein, und wir fügen nur einen minimalen Inhalt hinzu, umxterm
zu starten Sitzung auf Verbindung. 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. Jetzt 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 vermuten lässt, können wir die vom Server bereitgestellten Protokolle in den Protokolldateien unter
/home/<username>/.vnc/<hostname>:1.log
verfolgen , ändert sich dieser Dateiname, wenn mehr als ein VNC-Server läuft (ebenso wie der Port, den Sie verbinden müssen). 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.
- Wir können viele VNC-Clients verwenden, um uns mit dem jetzt gestarteten Server zu verbinden.
Remmina
ist ein Client, der standardmäßig mit den neuesten Gnome-Desktops geliefert wird und SSH-, RDP- und VNC-Sitzungen verarbeiten kann. Wir müssen den Hostnamen oder die IP-Adresse des Hosts angeben, auf dem der VNC-Server ausgeführt wird, sowie den Port. Das folgende Beispiel verwendet192.168.1.14
als Adresse und den Standardport5901
fanden wir im Logfile des Servers im vorherigen Schritt. Wir müssen „VNC“ als Protokoll neben dem Adressfeld auswählen und das Passwort eingeben, das wir mitvncpasswd
angegeben haben vorhin.Verbinden mit tigervnc mit Remmina.
Wenn alles wie erwartet funktioniert, sind wir mit dem VNC-Server verbunden und führen
xterm
aus , Annehmen und Bereitstellen von Inhalten aus der Zwischenablage, geschützt vor Netzwerkausfällen. Dietop
Beispiel unten läuft ununterbrochen, wenn wir die Sitzung trennen und später wieder verbinden.Top ununterbrochen aus der Ferne laufen.
- Obwohl diese Schritte im Wesentlichen zeigen, wie man den VNC-Server einrichtet und sich mit ihm verbindet, macht es wenig Sinn,
top
auszuführen auf einem entferntenxterm
session, wie wir es mit viel weniger Aufwand mit ssh machen könnten, und einem Session-Server wiescreen
. Um die Leistungsfähigkeit eines so einfachen xterm-Setups zu sehen, geben Sie einfachgedit
ein auf der entfernten xterm-Konsole (vorausgesetzt, ein Gnome-Desktop ist installiert).
Grafische Programme innerhalb von xterm ausführen.
Ein leeres Dokument wird in gedit angezeigt, genau wie jedes grafische Programm, wenn es von der Befehlszeile 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 darauf, wir können uns einfach wieder verbinden und mit der Arbeit am Text fortfahren, selbst wenn auf unserem Client-Computer ein nicht behebbarer Fehler auftritt und wir vergessen haben, unsere Arbeit für die letzten paar Stunden zu speichern. Natürlich schützt der VNC-Server nicht vor dem Ausfall des Rechners, auf dem er läuft.