GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren und konfigurieren Sie VNC unter CentOS 7

In diesem Tutorial führen wir Sie durch die Schritte zum Installieren und Konfigurieren eines VNC-Servers auf einem CentOS 7-System. Wir zeigen Ihnen auch, wie Sie sich über einen SSH-Tunnel sicher mit dem VNC-Server verbinden.

Virtual Network Computing (VNC) ist ein grafisches Desktop-Sharing-System, mit dem Sie Ihre Tastatur und Maus verwenden können, um einen anderen Computer fernzusteuern.

Voraussetzungen #

Bevor Sie mit dem Tutorial fortfahren, vergewissern Sie sich, dass Sie als Benutzer mit sudo-Berechtigungen angemeldet sind. Wir gehen davon aus, dass Sie als Benutzer namens linuxize angemeldet sind .

Installation von Xfce Desktop Environment #

Bei CentOS-Serverinstallationen ist häufig keine Desktop-Umgebung installiert, daher beginnen wir mit der Installation einer einfachen Desktop-Umgebung.

Wir werden Xfce installieren. Es ist schnell, stabil und verbraucht wenig Systemressourcen, was es ideal für die Verwendung auf Remote-Servern macht.

Xfce-Pakete sind im EPEL-Repository verfügbar. Wenn das Repository auf Ihrem Server nicht aktiviert ist, können Sie es aktivieren, indem Sie Folgendes eingeben:

sudo yum install epel-release

Sobald das Repository hinzugefügt wurde, installieren Sie Xfce auf Ihrem CentOS mit:

sudo yum groupinstall xfce

Abhängig von Ihrem System kann das Herunterladen und Installieren der Xfce-Pakete und Abhängigkeiten einige Zeit dauern.

VNC-Server wird installiert #

Wir werden TigerVNC als VNC-Server unserer Wahl verwenden. TigerVNC ist ein aktiv gewarteter Hochleistungs-Open-Source-VNC-Server.

Geben Sie den folgenden Befehl ein, um TigerVNC auf Ihrem CentOS-Server zu installieren:

sudo yum install tigervnc-server

Nachdem der VNC-Server installiert ist, besteht der nächste Schritt darin, den vncserver auszuführen Befehl, der die Erstkonfiguration erstellt und das Passwort einrichtet. Verwenden Sie sudo nicht, wenn Sie den folgenden Befehl ausführen:

vncserver

Sie werden aufgefordert, das Passwort einzugeben und zu bestätigen und ob Sie es als Nur-Lese-Passwort festlegen möchten. Wenn Sie sich dafür entscheiden, ein Nur-Anzeige-Passwort einzurichten, kann der Benutzer nicht mit der Maus und der Tastatur mit der VNC-Instanz interagieren.

You will require a password to access your desktops.

Password:
Verify:
Would you like to enter a view-only password (y/n)? n
/usr/bin/xauth:  file /home/linuxize/.Xauthority does not exist

New 'server2.linuxize.com:1 (linuxize)' desktop at :1 on machine server2.linuxize.com

Starting applications specified in /etc/X11/Xvnc-session
Log file is /home/linuxize/.vnc/server2.linuxize.com:1.log

Das erste Mal den vncserver Befehl ausgeführt wird, wird die Passwortdatei erstellt und in ~/.vnc gespeichert Verzeichnis, das erstellt wird, wenn es nicht vorhanden ist.

Beachten Sie den :1 nach dem Hostnamen in der obigen Ausgabe. Dies gibt die Anzeigeportnummer an, auf der der vnc-Server ausgeführt wird. In unserem Fall läuft der Server auf dem TCP-Port 5901 (5900+1). Wenn Sie eine zweite Instanz mit vncserver erstellen es wird auf dem nächsten freien Port ausgeführt, z. B. :2 , was bedeutet, dass der Server auf Port 5902 läuft (5900+2).

Beachten Sie Folgendes, wenn Sie mit VNC-Servern arbeiten::X ist ein Displayport, der sich auf 5900+X bezieht .

Bevor Sie mit dem nächsten Schritt fortfahren, stoppen Sie zuerst die VNC-Instanz mit dem vncserver Befehl mit einem -kill Option und die Servernummer als Argument. In diesem Fall läuft der Server auf Port 5901 (:1 ), also beenden wir es mit:

vncserver -kill :1
Killing Xvnc process ID 2432

VNC-Server wird konfiguriert #

Nachdem sowohl Xfce als auch TigerVNC auf dem Server installiert sind, besteht der nächste Schritt darin, TigerVNC für die Verwendung von Xfce zu konfigurieren. Öffnen Sie dazu folgende Datei:

nano ~/.vnc/xstartup

Und ändern Sie die letzte Zeile von exec /etc/X11/xinit/xinitrc zu exec startxfce4 :

~/.vnc/xstartup
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4 

Speichern und schließen Sie die Datei. Das obige Skript wird automatisch ausgeführt, wenn Sie den TigerVNC-Server starten oder neu starten.

Wenn Sie zusätzliche Optionen an den VNC-Server übergeben müssen, öffnen Sie ~/.vnc/config Datei und fügen Sie eine Option pro Zeile hinzu. Die gebräuchlichsten Optionen sind in der Datei aufgeführt. Entkommentiere und ändere nach Belieben.

Hier ist ein Beispiel:

~/.vnc/config
# securitytypes=vncauth,tlsvnc
# desktop=sandbox
geometry=1920x1080
# localhost
# alwaysshared
dpi=96

Erstellen einer Systemd-Unit-Datei #

Wir erstellen eine systemd-Unit-Datei, die es uns ermöglicht, den VNC-Dienst nach Bedarf einfach zu starten, zu stoppen und neu zu starten, genau wie jeder andere systemd-Dienst.

Kopieren Sie die Unit-Datei vncserver mit dem cp Befehl:

sudo cp /usr/lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service

Öffnen Sie die Datei mit Ihrem Texteditor, bearbeiten Sie die gelb markierten Zeilen und ersetzen Sie „linuxize“ durch Ihren tatsächlichen Benutzernamen:

sudo nano /etc/systemd/system/vncserver@\:1.service
/etc/systemd/system/vncserver@:1.service
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
User=linuxize
Group=linuxize

# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver %I
PIDFile=/home/linuxize/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'

[Install]
WantedBy=multi-user.target

Speichern und schließen Sie die Datei. Systemd benachrichtigen, dass wir eine neue Unit-Datei erstellt haben mit:

sudo systemctl daemon-reload

Der nächste Schritt besteht darin, die Unit-Datei mit dem folgenden Befehl zu aktivieren:

sudo systemctl enable vncserver@:1.service

Die Zahl 1 nach dem @ sign definiert den Anzeigeport, auf dem der VNC-Dienst ausgeführt wird. In diesem Beispiel ist das der Standardwert 1 , und der VNC-Server lauscht auf Port 5901 , wie wir im vorherigen Abschnitt besprochen haben.

Starten Sie den VNC-Dienst, indem Sie Folgendes ausführen:

sudo systemctl start vncserver@:1.service

Überprüfen Sie, ob der Dienst erfolgreich gestartet wurde mit:

sudo systemctl status vncserver@:1.service
● vncserver@:1.service - Remote desktop service (VNC)
   Loaded: loaded (/etc/systemd/system/vncserver@:1.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2020-04-06 19:27:47 UTC; 16s ago
  Process: 909 ExecStart=/usr/bin/vncserver %I (code=exited, status=0/SUCCESS)
  Process: 891 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS)
 Main PID: 923 (Xvnc)
 ...

Verbinden mit VNC-Server #

VNC ist kein verschlüsseltes Protokoll und kann Paketschnüffeln ausgesetzt sein. Der empfohlene Ansatz besteht darin, einen SSH-Tunnel zu erstellen, der den Datenverkehr von Ihrem lokalen Computer auf Port 5901 sicher an den Server auf demselben Port weiterleitet.

SSH-Tunneling unter Linux und macOS einrichten #

Wenn Sie Linux, macOS oder ein anderes Unix-basiertes Betriebssystem auf Ihrem Computer ausführen, können Sie mit dem folgenden ssh ganz einfach einen Tunnel erstellen Befehl:

ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address

Sie werden aufgefordert, das Benutzerkennwort einzugeben.

Vergessen Sie nicht, username zu ersetzen und server_ip_address mit Ihrem Benutzernamen und der IP-Adresse Ihres Servers.

SSH-Tunneling unter Windows einrichten #

Wenn Sie Windows ausführen, können Sie SSH-Tunneling mit dem PuTTY-SSH-Client einrichten.

Öffnen Sie Putty und geben Sie Ihre Server-IP-Adresse in das Feld Host name or IP address ein Feld.

Unter Connection erweitern Sie SSH und wählen Sie Tunnels . Geben Sie den Port des VNC-Servers ein (5901 ) im Source Port Feld und geben Sie server_ip_address:5901 ein im Destination Feld und klicken Sie auf Add Schaltfläche wie im Bild unten gezeigt:

Gehen Sie zurück zur Session Seite, um die Einstellungen zu speichern, damit Sie sie nicht jedes Mal neu eingeben müssen.

Um sich beim Remote-Server anzumelden, wählen Sie die gespeicherte Sitzung aus und klicken Sie auf Open Schaltfläche

Verbinden mit Vncviewer #

Nachdem Sie das SSH-Tunneling eingerichtet haben, ist es an der Zeit, Ihren Vncviewer zu öffnen und eine Verbindung zum VNC-Server unter localhost:5901 herzustellen .

Sie können jeden VNC-Viewer wie TigerVNC, TightVNC, RealVNC, UltraVNC, Vinagre und VNC Viewer für Google Chrome verwenden.

In diesem Beispiel verwenden wir TigerVNC. Öffnen Sie Ihren VNC-Viewer und geben Sie localhost:5901 ein , und klicken Sie auf Connect Schaltfläche.

Geben Sie Ihr Passwort ein, wenn Sie dazu aufgefordert werden, und Sie sollten den Standard-Xfce-Desktop sehen. Es sollte etwa so aussehen:

Sie können jetzt mit der Interaktion mit dem Remote-XFCE-Desktop von Ihrem lokalen Computer aus mit Ihrer Tastatur und Maus beginnen.


Cent OS
  1. So installieren und konfigurieren Sie VNC unter Ubuntu 20.04

  2. So installieren und konfigurieren Sie VNC unter Ubuntu 18.04

  3. So installieren und konfigurieren Sie einen NFS-Server unter CentOS 8

  4. So installieren und konfigurieren Sie VNC unter CentOS 8

  5. So installieren und konfigurieren Sie Gitlab unter CentOS 8

So installieren Sie VNC-Server unter CentOS 7

So installieren Sie VNC-Server unter CentOS 6

So installieren Sie VNC-Server unter CentOS 8

So installieren und konfigurieren Sie Sandstorm Server unter CentOS 8

So installieren und konfigurieren Sie den VNC (TigerVNC)-Server in CentOS / RHEL 7

So installieren und konfigurieren Sie VNC Server unter CentOS/RHEL 8