Windows aus der Ferne administrieren. Unter Linux von Windows oder vom Mac aus arbeiten. Jeder Rechner ist von allen anderen aus bedienbar, unabhängig vom Betriebssystem. Das ist der Wunschtraum eines jedes Administrators heterogener Netzwerke. VNC führt die Betriebssysteme zusammen. Und alles zum Nulltarif.
|
|
Mit VNC (Vitual Network Computing) kann
man einen anderen PC im Netz fernsteuern. Man sieht in einem Fenster den
selben Bildschirm, als wenn man direkt vor dem Rechner sitzen würde.
Das klappt nicht nur zwischen zwei Linux-Maschinen, sondern auch zwischen
zwei Windows-Rechnern oder bei jeglicher anderer Kombination von Windows,
Linux und MacOS.
Vorbei sind die Zeiten, in denen man bei
Problemen an einem Netzwerk-PC seinen Platz verlassen mußte, um sich
zum betroffenen Rechner zu begeben, sondern kann stattdessen -solange eine
Netzwerkverbindung besteht- den Problemrechner aus der Ferne begutachten
und dem dortigen User helfen. Auch Softwareupdates über das Netz sind
somit möglich.
Die beste Einsatzmöglichkeit besteht
darin, falls man vor einem Windows-Rechner sitzt, in einem Fenster auf
einem Linux-System zu arbeiten. Dafür benötigt man aber mindestens
einen Linux-PC im Netzwerk auf den man auch Zugriffsrechte hat.
|
|
VNC besitzt zwei Programmteile, den Viewer (vncviewer) und dem Server (vncserver). Der Server wird auf demjenigen Rechner gestartet, auf den zugegriffen werden soll, der Viewer auf demjenigen Rechner, an dem man arbeitet. Damit man im Netz die einzelnen Rechner kreuz und quer administrieren kann, muß es sowohl den Server als auch den Viewer für die verschiedenen Plattformen geben. Vom Viewer existiert auch eine Java-Version, so daß nur ein Java-fähiger Webbrowser existieren muß. Mittlerweile gibt es folgende Portierungen von VNC
|
|
Für die Installation unter Linux sollte man bei Suse-Systemen das mitgelieferte rpm-Paket "vnc.rpm" installieren, bei anderen Distributionen den Sourcecode oder eine kompilierte Version aus dem Netz laden, wenn das Programm nicht schon der Distribution beigelegt war. Man erhält die benötigten Programmpakete unter http://www.uk.research.att.com/vnc/ download.html. Nach der Installation kann man den Server mit
>> vncserver
starten. Aus Sicherheitsgründen sollte
man den Server nie als root starten, sonder nur als normaler Benutzer.
Später kann man dann in einem X-Terminal mit "su" root-Rechte erlangen.
Beim ersten Start von vncserver wird ein
Paßwort abgefragt, mit dem später der Zugang gesichert wird.
Der Server läuft als Deamon und benötigt nur minimale Rechenzeit.
Unter Linux ist es möglich mehrere X-Server zu starten. Ist
bereits ein X-Server im Betrieb, so läuft dieser unter "localhost:1",
in diesem Fall startet vncserver einen neuen X-Server unter ":2", wenn
diese Nummer frei ist. In der Standardausgabe steht dann diese Nachricht:
"New 'X' desktop is paul:2"
Diese Portnummer muß man kennen um dann mit vncviewer die Verbindung zum Server aufbauen zu können. Zum ersten testen starten wir vncviewer auf dem selben Rechner wie den Server
>> vncviewer localhost:2
wobei die Nummer der Portnummer entspricht,
unter der vncserver den X-Server gestartet hat.
Nun wird das Passwort abgefragt und daraufhin
ein Fenster geöffnet. In diesem erscheint nun ein gewöhnlicher
X-Server mit einem Fenstermanager (Standardmäßig twm) und ein
Terminal. Die Konfiguration, welche Programme aufgerufen werden sollen,
befinden sich in der Datei ~/.vnc/xstartup . Dort werden die Programme
gestartet, welche man nach dem Einloggen auf dem Desktop finden will. Der
letzte Eintrag startet den Windowmanager. Wer eine langsame Netzwerkverbindung
besitzt, sollte diesen bei twm belassen, wer noch Resourcen frei hat, kann
auch anspruchsvollere Windowmanager wie WindowMaker oder KDE verwenden.
|
|
Unter Windows läuft die Installation
in bekannter Weise. Nach dem Herunterladen und Entpacken der Dateien kann
man den Viewer sofort und ohne jegliche Installationsroutinen benutzen.
Vor der Benutzung des Servers muß dieser jedoch noch installiert werden.
Um nun von Windows aus auf den Linux-Rechner zugreifen zu können,
startet man vncviewer und gibt in dem erscheinenden Fenster die IP-Nummer
(oder den Host-Name) des Linuxrechners und die Portnummer des X-Servers
ein. Nach erfolgreichem Connect wird nach dem Passwort gefragt, und im erscheinenden
Fenster läft dann der X-Server. Bis auf einige wenige Ausnahmen (z.B.
xfmail) sind die meisten Linux-Programme uneingeschränkt benutzbar.
Will man aber andersherum vom Linux-PC
aus den Windows-Rechner steuern, so muß man zuerst unter Windows
das Programm VNC-Server startet. Unter Linux kann man dann mit vncviewer,
der IP-Nummer und Port 1 den Windows-PC bedienen. Das Passwort wird unter
Windows vncserver eingestellt.
|
|
Unter Linux sollte VNC-Server nicht automatisch
beim Booten gestartet werden, weil dann der Zugriff auf den Linux-Rechner
nur mit dem VNC-Passwort geschützt ist. Stattdessen ist es sinnvoller
zum starten des Servers sich per telnet auf dem Linux-PC einzuloggen
(nach Möglichkeit mit SecureShell, ssh) und per Hand den Server zu
starten, und diesen nach schließen des Viewers auch wieder per Telnet
zu beenden. Es empfiehlt sich für vncviewer ein anderes Passwort als
für seinen Login unter Linux zu verwenden.
Da unter Windows die Sicherheitsmaßnahmen
ihren Namen eigentlich gar nicht verdienen, kann man hier risikolos den
vncserver bei jedem Booten mitstarten. Dafür legt man einen Link des
Programms in das Autostart-Verzeichnis an.
|
|
X-Windows (XFree86) wurde von Anfang an
für den Netzwerkbetrieb entwickelt, so daß das Protokoll dahingehend
optimiert wurde, daß nur minimaler Datenausausch erforderlich ist.
Unter Windows gibt es eine derartige Entwicklung nicht, und vncserver hat
große Probleme, den Datenverkehr, der vom Windows-Rechner ausgeht,
möglichst klein zu halten. Dementsprechend träge ist auch die
Fernsteuerung des Windows-Rechners bei schlechten Übertragungsraten.
Steuert man andersherum einen Linux-Rechner,
ist der Bildschirmaufbau spürbar flüssiger. Zusätzlich ist
es hier möglich, mehrere X-Server zu benutzen, so daß mehrere
Benutzer gleichzeitig auf einem Linux-Rechner arbeiten können.
|
|
Die größtmögliche Plattformunabhängigkeit wurde wohl dadurch erreicht, daß man den Rechner auch mit jedem beliebigen Java-fähigen Web-Browser fernsteuern kann. Denn statt mit vncviewer kann auch der Web-Browser mit dem Server Kontak aufnehmen. Dafür wähl man einfach die Seite http://IP_Nummer:5801. Die IP-Nummer gibt den Rechner an, auf dem der Server läuft, und die letzte Portnummer entspricht der Nummer, unter welcher der Server gestartet wurde. Voraussetzung hierfür ist allerdings ein äußerst schneller PC, da der Bildschirmaufbau im Browser durch Java erfolgt und sehr Rechenintensiv ist. Man kann den Bildschirmaufbau deutlich beschleunigen, wenn der dargestellte Bildschirm kein Pixmap als Hintergrund enthält, sondern nur einfarbig ist. Erreichen kann man dies durch den Befehl
>> xsetroot -solid white