Ratgeber Remote Control Software

Fernzugriff auf Desktops mit VNC

23.04.2009
Von Jörg Thoma

Verschlüsseln und komprimieren

Das Programm tightvnc bietet etliche Optionen, um einerseits die Daten zwischen VNC-Server und -Client zu komprimieren und sie andererseits effizient zu verschlüsseln. Unter Suse Linux wird das Paket standardmäßig gleich mitinstalliert, unter Ubuntu Linux rüsten Sie über den Paketmanager Synaptic das Paket "xtightvncviewer" nach. Zunächst geben Sie wie gewohnt auf dem Server-Rechner VNC über Krfb oder über "Einstellungen, Entfernter Desktop" frei. Wählen Sie unbedingt ein komplexes Passwort, bestehend aus mehr als acht alphanummerischen Zeichen, am besten gespickt mit Sonderzeichen.

Da tightvnc die Verbindung über SSH verschlüsselt, müssen Sie unter Ubuntu gegebenenfalls das Paket "ssh" nachrüsten. Ermitteln Sie die nummerische IP-Adresse des Servers, oder verwenden Sie Ihre Dnydns-Adresse (siehe Abschnitt 'Stets erreichbar mit Dyndns'auf der letzten Seite).

Wichtig: Auf beiden Rechnern muss ein Benutzer mit gleichem Namen eingerichtet sein, alternativ verbinden Sie sich zuvor per SSH unter einem anderen Benutzernamen (Abschnitt 'VNC mit SSH im Internet'). Auf dem Client-Rechner öffnen Sie nun ein Terminal-Fenster und verwenden bei einer langsamen Modem-Verbindung folgenden Befehl:

vncviewer -via

<
IP-Adresse
>
-bgr233 -compresslevel 9 -quality 0 -x11cursor localhost:0

Unter Ubuntu verwenden Sie stattdessen den Befehl "xtightvncviewer" samt Parameter, um das Programm zu starten.

Zunächst werden Sie aufgefordert, das Benutzerpasswort für die SSH-Verbindung einzugeben, anschließend tippen Sie dann das Passwort für die VNC-Freigabe ein. Der Parameter "-via" stellt eine verschlüsselte Verbindung zum angegebenen Server-Rechner her, "-bgr233" setzt die Farbwerte herab, um mehr Platz für wichtigere Daten zu schaffen. "-compresslevel" bestimmt den Komprimierungsgrad der zu sendenden Daten, wobei Sie hier einen Wert zwischen "0" (keine Komprimierung) und "9" (höchste Komprimierung) verwenden können.

Die gleiche Wertspanne verwenden Sie hinter dem Parameter "-quality", wobei Sie hier die Bildqualität beeinflussen, die vncviewer darstellt. Davon hängt ab, wie viele Daten über das Netzwerk angefordert werden müssen. Der Parameter "-x11cursor" verwandelt den Mauszeiger auf dem Client-Rechner in einen Pfeil, statt eines kleinen Quadrats. Da die Verbindung in diesem Fall von SSH auf den lokalen Rechner getunnelt wird, meldet sich vncviewer nun bei "localhost" auf Port "0" an. Es erscheint immer der auf dem Server-Rechner gegenwärtig gestartete Desktop, egal welcher Benutzer sich dort gerade angemeldet hat. Den obigen Befehl können Sie auch ohne Komprimierung in einem lokalen Netzwerk verwenden.

Wenn der Server-Rechner im Netzwerk sich hinter einem Gateway-Server befindet, dann können Sie mit folgendem Befehl auf den internen Rechner zugreifen:

vncviewer -via

<
IP-Adresse des Gateway-Servers
>
-bgr233 -compresslevel 9 -quality 9 -x11cursor
<
Interne IP-Adresse
>
:0

Weitere Hilfe zu vncviewer erhalten Sie mit der Eingabe "vncviewer --help" und "man vncviewer" unter Suse Linux oder "xtightvncviewer --help" unter Ubuntu.

Fedora Core verwendet standardmäßig das Programm Realvnc, das Sie mit dem Paket "vnc" installieren. Der Befehl:

vncviewer -via

<
IP-Adresse
>
localhost:0

baut eine direkte verschlüsselte Verbindung zu einem VNC-Server auf. Den Befehl

vncviewer -via

<
IP-Adresse des Gateway Servers
>
<
Interne IP-Adresse
>
:0

verwenden Sie, wenn ein Gateway-Rechner dazwischen liegt. Standardmäßig errät Realvnc anhand der Verbindung den optimalen Komprimierungsgrad, alternativ geben Sie dem Programm bei langsamen Verbindungen niedrigere Farbwerte per Parameter mit, etwa "-LowColourLevel=0". Weitere Parameter und Erklärungen dazu erhalten Sie mit "vncviewer --help".