Android

So installieren und konfigurieren Sie vnc auf centos 7

VNC Viewer setup for Windows

VNC Viewer setup for Windows

Inhaltsverzeichnis:

Anonim

In diesem Tutorial werden wir Sie durch die Schritte zur Installation und Konfiguration eines VNC-Servers auf einem CentOS 7-System führen. Wir zeigen Ihnen auch, wie Sie eine sichere Verbindung zum VNC-Server über einen SSH-Tunnel herstellen.

Virtual Network Computing (VNC) ist ein grafisches Desktop-Freigabesystem, mit dem Sie mit Tastatur und Maus einen anderen Computer fernsteuern können.

Voraussetzungen

Stellen Sie vor dem Fortfahren mit dem Lernprogramm sicher, dass Sie als Benutzer mit sudo-Berechtigungen angemeldet sind. Wir gehen davon aus, dass Sie als Benutzer mit dem Namen linuxize angemeldet sind.

Xfce Desktop Environment installieren

Bei CentOS-Serverinstallationen ist häufig keine Desktop-Umgebung installiert. Beginnen wir daher mit der Installation einer kompakten Desktop-Umgebung.

In diesem Handbuch installieren wir Xfce. Es handelt sich um eine schnelle, stabile und ressourcenarme Lösung, die sich ideal für die Verwendung auf Remoteservern eignet.

Xfce-Pakete sind in den EPEL-Repositorys verfügbar. Wenn auf Ihrem Server kein EPEL-Repository aktiviert ist, können 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

Das Herunterladen und Installieren der Xfce-Pakete und Abhängigkeiten kann je nach System einige Zeit in Anspruch nehmen.

VNC Server installieren

Wir werden TigerVNC als unseren bevorzugten VNC-Server 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:

yum install tigervnc-server

vncserver der VNC-Server installiert ist, müssen Sie im nächsten Schritt den Befehl vncserver , mit dem die Erstkonfiguration erstellt und das Kennwort eingerichtet wird. Verwenden Sie sudo nicht, wenn Sie den folgenden Befehl ausführen:

vncserver

Sie werden aufgefordert, das Kennwort einzugeben und zu bestätigen und zu entscheiden, ob Sie es als Nur-Anzeige-Kennwort festlegen möchten. Wenn Sie ein Kennwort nur zum Anzeigen einrichten, kann der Benutzer nicht mit der VNC-Instanz über die Maus und die Tastatur 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

Bei der ersten vncserver Befehls vncserver wird die Kennwortdatei im Verzeichnis ~/.vnc erstellt und gespeichert, das erstellt wird, wenn es nicht vorhanden ist.

Beachten Sie Folgendes :1 nach dem Hostnamen in der obigen Ausgabe. Dies gibt die Nummer des Anzeigeports an, auf dem der VNC-Server ausgeführt wird. In unserem Fall läuft der Server auf dem TCP-Port 5901 (5900 + 1). Wenn Sie mit vncserver eine zweite Instanz vncserver , wird diese auf dem nächsten freien Port ausgeführt, dh :2 , dh, der Server wird auf Port 5902 (5900 + 2) ausgeführt.

Bei der Arbeit mit VNC-Servern ist Folgendes zu beachten :X ist ein Anzeigeport, der sich auf 5900+X bezieht.

Bevor Sie mit dem nächsten Schritt fortfahren, stoppen Sie zunächst die VNC-Instanz, indem Sie den Befehl -kill Option -kill und der -kill als Argument verwenden. In unserem Fall läuft der Server auf Port 5901 ( :1 ), also stoppen wir ihn mit:

vncserver -kill:1

Killing Xvnc process ID 2432

VNC Server konfigurieren

Nachdem nun sowohl Xfce als auch TigerVNC auf unserem CentOS-Server installiert sind, müssen Sie TigerVNC für die Verwendung von Xfce konfigurieren. Öffnen Sie dazu die folgende Datei:

nano ~/.vnc/xstartup

Und ändern Sie die letzte Zeile von exec /etc/X11/xinit/xinitrc in 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.

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, mit der wir den VNC-Dienst wie jeden anderen systemd-Dienst bei Bedarf problemlos starten, stoppen und neu starten können.

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

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

Öffnen Sie die Datei mit Ihrem Texteditor und ersetzen Sie sie mit Ihrem tatsächlichen Benutzernamen.

sudo nano /etc/systemd/system/vncserver@\:1.service /etc/systemd/system/vncserver@:1.service

Description=Remote desktop service (VNC) After=syslog.target network.target Type=forking # Clean any existing files in /tmp/.X11-unix environment ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 ||:' ExecStart=/usr/sbin/runuser -l linuxize -c "/usr/bin/vncserver %i" PIDFile=/home/linuxize/.vnc/%H%i.pid ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 ||:' WantedBy=multi-user.target

Speichern und schließen Sie die Datei. Benachrichtigen Sie systemd, 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 Nummer 1 nach dem @ -Zeichen definiert den Anzeigeport, auf dem der VNC-Dienst ausgeführt wird. In unserem Fall ist dies die Standardnummer 1 und der VNC-Server überwacht Port 5901 wie im vorherigen Abschnitt erläutert.

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

sudo systemctl start vncserver@:1.service

Stellen Sie sicher, dass 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 Sun 2018-09-16 09:59:53 UTC; 4s ago Process: 6391 ExecStart=/usr/sbin/runuser -l linuxize -c /usr/bin/vncserver %i (code=exited, status=0/SUCCESS) Process: 6389 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 ||: (code=exited, status=0/SUCCESS) Main PID: 6413 (Xvnc) CGroup: /system.slice/system-vncserver.slice/vncserver@:1.service ‣ 6413 /usr/bin/Xvnc:1 -auth /home/linuxize/.Xauthority -desktop server2.linuxize.com:1 (linuxize) -fp catalogue:/etc/X11/fontpath.d -geometry 1024x768 -pn -rfbauth /home/linuxize/.vnc/passwd -rfbport…

Verbindung zum VNC-Server

VNC ist kein verschlüsseltes Protokoll und kann dem Paket-Sniffing unterliegen. Es wird empfohlen, einen SSH-Tunnel zu erstellen, der den Datenverkehr von Ihrem lokalen Computer an Port 5901 sicher an den Server an demselben Port weiterleitet.

Richten Sie SSH-Tunneling unter Linux und macOS ein

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

Sie werden aufgefordert, das Benutzerpasswort einzugeben.

Vergessen Sie nicht, den Benutzernamen und die Server-IP-Adresse durch Ihren Benutzernamen und die IP-Adresse Ihres Servers zu ersetzen.

Einrichten des SSH-Tunnels unter Windows

Öffnen Sie Putty und geben Sie die IP-Adresse Ihres Servers in das Feld Host name or IP address ein.

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

Fazit

Inzwischen sollte ein VNC-Server eingerichtet sein und Sie können Ihren CentOS 7-Server problemlos über eine grafische Oberfläche verwalten.

Um Ihren VNC-Server so zu konfigurieren, dass eine Anzeige für mehrere Benutzer gestartet wird, erstellen Sie die Erstkonfiguration und richten Sie das Kennwort mit dem Befehl vncserver Erstellen Sie dann eine neue Servicedatei mit einem anderen Port.

Fühlen Sie sich frei, einen Kommentar zu hinterlassen, wenn Sie Fragen haben.

centos vnc