So installieren und konfigurieren Sie VNC unter Ubuntu 14.04

Einführung

VNC (Virtual Network Computing) ist ein Verbindungssystem, mit dem Sie mit Tastatur und Maus mit einer grafischen Desktopumgebung auf einem Remoteserver interagieren können. VNC vereinfacht die Verwaltung von Dateien, Software und Einstellungen auf einem Remote-Server für Benutzer, die noch nicht mit der Arbeit mit der Befehlszeile vertraut sind.

In diesem Handbuch richten wir VNC auf einem Ubuntu 14.04-Server ein und stellen eine sichere Verbindung über einen SSH-Tunnel her. Der VNC-Server, den wir verwenden werden, ist TightVNC, ein schnelles und leichtes Fernsteuerungspaket. Diese Auswahl stellt sicher, dass unsere VNC-Verbindung auch bei langsameren Internetverbindungen reibungslos und stabil ist.

Voraussetzungen

Bevor Sie mit diesem Handbuch beginnen, müssen zunächst einige Schritte ausgeführt werden.

Sie benötigen einen Ubuntu 14.04-Server, der mit einem Nicht-Root-Benutzer installiert und konfiguriert ist, der über die Berechtigungen vonsudoverfügt. Wenn Sie dies noch nicht getan haben, können Sie die Schritte 1 bis 4 inUbuntu 14.04 initial server setup guideausführen, um dieses Konto zu erstellen.

Sobald Sie einen Benutzer haben, der kein Root-Benutzer ist, können Sie damit SSH auf Ihrem Ubuntu-Server ausführen und mit der Installation Ihres VNC-Servers fortfahren.

[[Schritt 1 - Installieren der Desktop-Umgebung und des VNC-Servers]] == Schritt 1 - Installieren der Desktop-Umgebung und des VNC-Servers

Standardmäßig verfügen die meisten Linux-Serverinstallationen nicht über eine grafische Desktop-Umgebung. In diesem Fall müssen wir zunächst eine Version installieren, mit der wir arbeiten können. In diesem Beispiel installieren wir XFCE4, das sehr leicht ist und dennoch den meisten Benutzern vertraut ist.

Wir können die XFCE-Pakete zusammen mit dem Paket für TightVNC mitapt direkt aus den Ubuntu-Software-Repositorys beziehen:

sudo apt-get update
sudo apt-get install xfce4 xfce4-goodies tightvncserver

Verwenden Sie den Befehlvncserver, um ein sicheres Kennwort einzurichten, um die Erstkonfiguration des VNC-Servers abzuschließen:

vncserver

(Nachdem Sie Ihr Zugangspasswort eingerichtet haben, werden Sie gefragt, ob Sie ein Nur-Ansicht-Passwort eingeben möchten. Benutzer, die sich mit dem Nur-Ansicht-Kennwort anmelden, können die VNC-Instanz nicht mit ihrer Maus oder Tastatur steuern. Dies ist eine hilfreiche Option, wenn Sie anderen Personen, die Ihren VNC-Server verwenden, etwas demonstrieren möchten.)

vncserver schließt die Installation von VNC ab, indem Standardkonfigurationsdateien und Verbindungsinformationen für unseren Server erstellt werden. Wenn diese Pakete installiert sind, können Sie Ihren VNC-Server und Ihren grafischen Desktop konfigurieren.

[[Schritt zwei - Konfigurieren des VNC-Servers]] == Schritt Zwei - Konfigurieren des VNC-Servers

Zunächst müssen wir unserem VNC-Server mitteilen, welche Befehle beim Start ausgeführt werden sollen. Diese Befehle befinden sich in einer Konfigurationsdatei mit dem Namenxstartup. Auf unserem VNC-Server ist bereits einexstartup-Datei vorinstalliert, für unseren XFCE-Desktop müssen jedoch einige andere Befehle verwendet werden.

Beim ersten Einrichten von VNC wird eine Standardserverinstanz auf Port 5901 gestartet. Dieser Port wird als Anzeigeport bezeichnet und von VNC als:1 bezeichnet. VNC kann mehrere Instanzen an anderen Anzeigeports wie:2,:3 usw. starten. Denken Sie bei der Arbeit mit VNC-Servern daran, dass:X ein Anzeigeport ist, der sich auf5900+X bezieht.

Da wir die Konfiguration unserer VNC-Server ändern werden, müssen wir zuerst die VNC-Serverinstanz stoppen, die auf Port 5901 ausgeführt wird:

vncserver -kill :1

Bevor wir mit der Konfiguration unserer neuenxstartup-Datei beginnen, sichern wir das Original, falls wir es später benötigen:

mv ~/.vnc/xstartup ~/.vnc/xstartup.bak

Jetzt können wir eine neuexstartup-Datei mitnano öffnen:

nano ~/.vnc/xstartup

Fügen Sie diese Befehle in die Datei ein, damit sie automatisch ausgeführt werden, wenn Sie Ihren VNC-Server starten oder neu starten:

#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &

Der erste Befehl in der Datei,xrdb $HOME/.Xresources, weist das GUI-Framework von VNC an, die.Xresources-Datei des Serverbenutzers zu lesen. In.Xresources kann ein Benutzer Änderungen an bestimmten Einstellungen des grafischen Desktops vornehmen, z. B. Terminalfarben, Cursorthemen und Schriftwiedergabe.

Der zweite Befehl weist den Server einfach an, XFCE zu starten. Hier finden Sie die gesamte Grafiksoftware, die Sie zum komfortablen Verwalten Ihres Servers benötigen.

Damit der VNC-Server diese neue Startdatei ordnungsgemäß verwenden kann, müssen wir ihr ausführbare Berechtigungen erteilen:

sudo chmod +x ~/.vnc/xstartup

[[Schritt drei - Erstellen einer VNC-Servicedatei]] == Schritt 3 - Erstellen einer VNC-Servicedatei

Um unseren neuen VNC-Server einfach steuern zu können, sollten wir ihn als Ubuntu-Dienst einrichten. Auf diese Weise können wir unseren VNC-Server nach Bedarf starten, stoppen und neu starten.

Öffnen Sie zunächst eine neue Servicedatei in/etc/init.d mitnano:

sudo nano /etc/init.d/vncserver

Im ersten Datenblock werden einige allgemeine Einstellungen festgelegt, auf die sich VNC bezieht, z. B. unser Benutzername und die Bildschirmauflösung.

#!/bin/bash
PATH="$PATH:/usr/bin/"
export USER="user"
DISPLAY="1"
DEPTH="16"
GEOMETRY="1024x768"
OPTIONS="-depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY} -localhost"
. /lib/lsb/init-functions

Stellen Sie sicher, dass Sieuser durch den von Ihnen eingerichteten Nicht-Root-Benutzer ersetzen und1024x768 ändern, wenn Sie eine andere Bildschirmauflösung für Ihre virtuelle Anzeige verwenden möchten.

Als Nächstes können wir die Befehlsanweisungen einfügen, mit denen wir den neuen Dienst verwalten können. Der folgende Block bindet den zum Starten eines VNC-Servers erforderlichen Befehl und die Rückmeldung, dass er gestartet wird, an das Befehlsschlüsselwortstart.

case "$1" in
start)
log_action_begin_msg "Starting vncserver for user '${USER}' on localhost:${DISPLAY}"
su ${USER} -c "/usr/bin/vncserver ${OPTIONS}"
;;

Der nächste Block erstellt das Befehlsschlüsselwortstop, wodurch eine vorhandene VNC-Serverinstanz sofort beendet wird.

stop)
log_action_begin_msg "Stopping vncserver for user '${USER}' on localhost:${DISPLAY}"
su ${USER} -c "/usr/bin/vncserver -kill :${DISPLAY}"
;;

Der letzte Block ist für das Befehlsschlüsselwortrestart, bei dem es sich einfach um die beiden vorherigen Befehle (stop undstart) handelt, die zu einem Befehl zusammengefasst sind.

restart)
$0 stop
$0 start
;;
esac
exit 0

Sobald sich alle diese Blöcke in Ihrem Dienstskript befinden, können Sie diese Datei speichern und schließen. Machen Sie dieses Dienstskript ausführbar, damit Sie die Befehle verwenden können, die Sie gerade eingerichtet haben:

sudo chmod +x /etc/init.d/vncserver

Versuchen Sie nun, mit dem Dienst und dem Befehl eine neue VNC-Serverinstanz zu starten:

sudo service vncserver start

[[Schritt 4 - Verbindung zu Ihrem VNC-Desktop herstellen]] == Schritt 4 - Verbindung zu Ihrem VNC-Desktop herstellen

Zum Testen Ihres VNC-Servers benötigen Sie einen Client, der VNC-Verbindungen über SSH-Tunnel unterstützt. Wenn Sie Windows verwenden, können Sie TightVNC, RealVNC oder UltraVNC verwenden. Mac OS X-Benutzer können die integrierte Bildschirmfreigabe oder eine plattformübergreifende App wie RealVNC verwenden.

Zunächst müssen wir auf Ihrem lokalen Computer eine SSH-Verbindung herstellen, die sicher an dielocalhost-Verbindung für VNC weiterleitet. Sie können dies über das Terminal unter Linux oder OS X mit dem folgenden Befehl tun:

(Denken Sie daran,user undserver_ip_address durch den Benutzernamen und die IP zu ersetzen, mit denen Sie über SSH eine Verbindung zu Ihrem Server hergestellt haben.)

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

Wenn Sie einen grafischen SSH-Client wie PuTTY verwenden, verwenden Sieserver_ip_address als Verbindungs-IP und legen Sielocalhost:5901 als neuen weitergeleiteten Port in den SSH-Tunneleinstellungen des Programms fest.

Als Nächstes können Sie mit Ihrem VNC-Viewer unterlocalhost:5901 eine Verbindung zum VNC-Server herstellen. Vergessen Sie nicht, dass:5901 am Ende ist, da dies der einzige Port ist, über den auf die VNC-Instanz zugegriffen werden kann.

Sobald Sie verbunden sind, sollten Sie den Standard-XFCE-Desktop sehen, der zur Konfiguration und Verwendung bereit ist! Es sollte ungefähr so ​​aussehen:

First VNC<br> connection

Nachdem Sie überprüft haben, dass die VNC-Verbindung funktioniert, fügen Sie Ihren VNC-Dienst zu den Standarddiensten hinzu, damit er automatisch gestartet wird, wenn Sie Ihren Server starten:

sudo update-rc.d vncserver defaults

Fazit

Sie sollten jetzt einen gesicherten VNC-Server auf Ihrem Ubuntu 14.04-Server haben. Jetzt können Sie die Dateien, Software und Einstellungen Ihres Servers über eine benutzerfreundliche grafische Oberfläche verwalten.