Lehnstuhladministration

18.02.1999
Die Software "Virtual Network Computing" von Olivetti und Oracle verschafft Systemverwaltern netzweiten Zugriff auf verschiedenste Rechner. Wenn auch die Übertragung für Anwendungen mitunter zu langsam ist, dürften die IT-Betreuer damit dennoch eine ruhige Kugel schieben. Dr. Klaus Plessner

Langer Wege kurzer Sinn: Wenn etwas nicht funktioniert, muß der Administrator ran. Ob in der Buchhaltung im Keller Daten verloren gehen, im Personalbüro nebenan Programme verrückt spielen oder der Betriebsleiter im vierten Stock seine E-Mail nicht empfangen kann - alle wenden sich mit ihren Computersorgen zuerst an den Systemverwalter. Die Folge: Der Systemadministrator und seine Kollegen sind häufig unterwegs und im Ernstfall nur über ihren Anrufbeantworter zu erreichen. Für das Unternehmen bedeutet das in jedem Fall erhöhte Kosten. Denn entweder legen Systemausfälle die Arbeit lahm oder ein Zuwachs im Team der Netzbetreuer läßt das Soll in der Lohnabrechnung hochklettern.

Es geht auch anders: Falls ein Benutzer Probleme mit seinem Rechner hat, ruft er den Systemverwalter an und startet ein kleines Programm, welches den Bildschirminhalt seines Geräts über das Netz auf einen fernen Computer kopieren kann. Der Administrator bleibt mit dem Anrufer in telefonischem Kontakt, läßt sich dessen Bildschirm in einem Browserfenster anzeigen und bedient mit seiner Tastatur und seiner Maus das Gerät des Rat Suchenden von seinem Schreibtisch aus.

Bildschirm auf Reisen

Das Programm, welches den Netzbetreuern auf diese Weise wunde Füße erspart, heißt "Virtual Network Computing" (VNC) und stammt aus dem im Zentrum von Cambridge gelegenen Olivetti Research Lab (ORL), einem ge-meinsamen Forschungslabor von Olivetti und Oracle. Grundlage der kostenlosen Software mit einer GNU-Lizenz ist das "Remote-Framebuffer-Protokoll", welches die Ablage des Framebuffers und der Tastatur- und Mauseingabe auf einem fernen Rechner regelt. Bei einem Framebuffer handelt es sich um den Speicherbereich auf der Grafikkarte, der Bildschirmseiten zwischenlagert. Weil das Protokoll mit dem Framebuffer kommuniziert, arbeitet es mit allen Fensteroberflächen zusammen und transportiert gleichermaßen Bildschirminhalte von Windows-Rechnern, Macintosh-Computern und X-Servern. DOS-Fenster hingegen und DOS-Bildschirme exportiert die Software nicht.

Damit die Desktop-Daten eines Rechners über das Netz gehen können, muß sowohl dort als auch auf dem fernen Computer jeweils eine VNC-Routine laufen. Möchte ein Benutzer dem Administrator zu Diagnosezwecken einen Fernzugang zu seinem Rechner einrichten, startet er auf seinem Gerät einen VNC-Serverprozeß, wohingegen der Administrator einen Java-fähigen Browser oder eine VNC-Clientsoftware benützt, welche die Ausgabedaten vom VNC-Server anfordert und Eingabedaten an diesen zurückgibt. Die erforderlichen Programme können kostenlos von der Web-Site des Forschungslabors bezogen werden. Dort haben die Entwickler von Cambridge Serversoftware für die Betriebssysteme Solaris 2.5, Linux 2.0, Dec Alpha OSF/1 3.2, Windows 95, Windows NT und Macintosh abgelegt. Auch eine Reihe von Clientpaketen steht zum Herunterladen bereit. Eine Java-Version ermöglicht den Fernzugriff mit einem Browser, und ein Windows-CE-Viewer soll mobile Geräte an die VNC-Welt anschließen. Mehrere Anhänger der GNU-Gemeinde haben zudem das Angebot des Forschungsteams gehörig ergänzt. Ihre Kreationen erscheinen auf der ORL-Site unter der Verknüpfung "Contributed". Anwender finden dort Quellen zum Beziehen von VNC-Servern und Clients für AIX, Acorn RISC OS, BSDI-Unix, Cygwin32, HPUX, SCO Open Server, SGI Irix 6.2 und SunOS 4.1.3. Sogar ein Viewer für DOS und eine Ein-Disketten-Linux-Version inclusive VNC-Client stehen zur Verfügung.

Verbindung ohne Einfluß

Eine kleine Umfrage von gateway zeigt, daß VNC vielfach den Systemverwalter von Abteilungsnetzen mit zehn bis 50 Benutzern beim Betreuen von Arbeitsplatzrechnern und Servern unterstützt. Hauptgrund für die Wahl der Software sind die geringen Einführungskosten, die sich auf den umgerechneten Zeitaufwand der Installation beschränken. Anstelle von VNC könnte zum Verwalten von Unix-Rechnern das Programm Telnet dienen, welches zum Standardzubehör von Unix-Systemen und Windows gehört. Wer gerne eine grafische Oberfläche benützt, kann auch auf Nicht-Unix-Rechnern einen X11 einsetzen. Die Auswahl an kommerziellen X-Servern ist groß. Für den Zugriff auf Windows-95-Rechner existiert allerdings keine Alternative zu VNC. Ein gern gesehener Vorteil des RFB-Protokolls ist sein zustandsloser Charakter. Weil der Server vom Zustand des Clients unabhängig ist, findet der Anwender nach einem Absturz seines Rechners auf dem Server dieselbe Umgebung vor, wie vor dem Abbruch seiner VNC-Sitzung. Aus diesem Grund bevorzugen Systemverwalter vielfach das Programm gegenüber einem X-Server, mit dem sie nach einer Unterbrechung die alte Sitzung nicht wieder aufnehmen können.

Die Installation der Software auf 32-Bit-Windows-Systemen ist sehr einfach. Das Programm Setup aus dem Paket "Win32" von ORL fügt dem Verzeichnis "Start" ein Unterverzeichnis "VNC" hinzu, welches die Clientsoftware "VNC-Viewer" und das Serverprogramm "Win-VNC 3.3.2" enthält. Das Tool "Install Default Registry Setting" setzt die Registratureinstellungen für VNC auf die Werte zurück, welche die Setup-Routine zu Beginn auswählt. Der Serverprozeß startet, sobald der Anwender im Programmmenü auf Win-VNC klickt, und gibt sich durch ein Symbol in der Taskleiste zu erkennen. Ein Doppelklick auf das Icon öffnet ein Fenster "Property Page", welches den Benutzer wenige Optionen auswählen läßt. Die einzige Wahl, die er treffen muß, ist ein maximal acht Zeichen langes Paßwort, mit dem sich ein Client beim VNC-Server ausweist. Auf Wunsch kann er veranlassen, daß die Tastatur- und Mauseingaben anderer Rechner vom Server nicht angenommen werden. Schließlich findet er eine kleine Liste verschiedener Verfahren zum Aktualisieren ausgelagerter Bildschirme vor. Falls eine genaue Darstellung erwünscht ist, die auf Kosten der Geschwindigkeit geht, kreuzt man hier "Poll Full Screen" an. Die Dokumentation empfiehlt, die Voreinstellungen nur zu ändern, wenn das Aktualisieren bei einer Anwendung nicht funktioniert.

Der VNC-Server kann auf Windows-Rechnern auch als Service laufen. Nach einem Neustart nimmt dann das Programm automatisch seine Arbeit auf, so daß ein Windows-NT-Bildschirm auch vor dem Einloggen eines Benutzers beziehungsweise wenn er gesperrt ist, über das Netz geht.

Installation ohne Hindernisse

Der Windows-Client startet mit dem Aufruf des VNC-Viewers. Das Programm fragt nach dem Namen oder der IP-Adresse des Zielrechners und der Nummer des Bildschirms. Diese wird im Optionsfenster des VNC-Server festgelegt. Anschließend muß der Benutzer das mit dem Server vereinbarte Paßwort eingeben und nach einer erfolgreichen Anmeldung baut sich schließlich vor den Augen des Anwenders der Bildschirm des Zielrechners auf. Auch der Client hat mehrere Optionen und kann sich zum Beispiel für eine schnellere 8-Bit-Pixel-Darstellung entscheiden, seine Tastatur ausschalten und verschiedene Encoding-Verfahren verwenden. Für Windows-NT-Server von Bedeutung ist der Befehl Send Ctl-Alt-Del, der Logins auf einem Windows-NT-Server ermöglicht.

Unix-Anwender erhalten beim Herunterladen des VNC-Pakets drei Binaries: den Server Xvnc, den Client vncviewer und das Programm vncpasswd zum Ändern des Paßworts. Dazu liegt dem entpackten Verzeichnis das Perl-Skript vncserver bei, das den Server startet. Der VNC-Server für Unix agiert gegenüber X-Anwendungen wie ein X-Server, der die Ausgabe in das RFB-Format umwandelt und an einen fernen Rechner übergibt. Das Skript ~/.vnc/xstartup wird nach dem Serverstart ausgeführt und enthält beispielsweise Angaben zum Window-Manager. Weiterhin im Paket enthalten ist eine Klassenbibliothek für Java-Clients. Diese muß in ein Verzeichnis kopiert werden, das im Skript vncserver als Verzeichnis vncClasses definiert ist. Die Voreinstellung heißt: /usr/local/vnc/ classes. Im Gegensatz zum Unix-VNC-Server sind die Java-Classes bei Win-VNC schon integriert, so daß sich der Benutzer bei der Installation darum nicht zu kümmern braucht.

Nur für geschützte Umgebungen

Sehr schick ist der Java-Client, der den Fernzugriff von einem Browser aus möglich macht und dem Administrator die Client-Installation erspart. Der Anwender tippt den Namen des Zielrechners und den voreingestellten Port in das URL-Feld des Browsers

Location:http://192.168.0.5:5800

und wird anschließend aufgefordert, sein Paßwort anzugeben. Die letzten beiden Ziffern der Portnummer entsprechen dabei der Nummer des Bildschirms.

Bisher verfügt VNC abgesehen von einem Challenge/Response-Mechanismus für die Anmeldung über keinerlei Sicherheitfunktionen und sollte nur in geschützten Umgebungen laufen. Mittlerweile existiert jedoch ein Zusatzpro-gramm (http://web.mit.edu/thouis/vnc), welches die ausgetauschten Daten mit "SSLeay" verschlüsselt, der Freeware-Alternative zu "Secure Socket Layer" (SSL) von Netscape. Wolfram Gloger hat für VNC-Server auf Unix-Rechnern einen IP-Filter geschrieben (http://www.orl.co.uk/vnc/archives/1998-09/0168.html), der mit der TCP-Wrapper-Bibliothek arbeitet. Dasselbe für Windows stammt aus der Feder von Jared Smolens (ftp://wik.res.cmu.edu/pub/vncip_bin.zip). Ein anderes von Axel Boldt vorgeschlagenes Verfahren zur Datensicherung verschlüsselt mit "Secure Shell" (SSH). Auf dem Server läuft neben dem VNC-Prozeß der SSH-Daemon "sshd". Der Client verbindet sich mit dem Server durch den Befehl

ssh -L 5801:server:5800

und stellt den VNC-Client auf den Port 5801. Der VNC-Server hört in diesem Beispiel auf den Port 5800. Eine genauere Beschreibung der Methode findet der Interessierte auf der VNC-Web-Site unter dem Link "Frequently asked Questions" (FAQ).

Turnschuhe ade!

Der VNC-Server für Windows hat einen entscheidenden Nachteil: Er ist bedeutend langsamer als die Unix-Version. Aus diesem Grund werden all jene enttäuscht sein, die mit VNC Windows-Applikationen auf Unix-Plattformen benutzen wollen. Für diesen Zweck ist das Tool zu langsam. Umgekehrt läßt sich das Programm sehr wohl als Alternative zu kommerziellen X-Servern von all jenen einsetzen, die X-Anwendungen von einem Windows-Rechner aus starten wollen.

Hervorragende Möglichkeiten tun sich jedoch für Administratoren auf, die mit VNC nicht nur Server, sondern auch Arbeitsplatzrechner und Windows-95-PCs verwalten können. Wie eingangs beschrieben, bekommt der Anwender vom Systembetreuer, der sich an seinem Rechner anmeldet, rasch Hilfe. Auf seinem Bildschirm kann er beobachten, welche Ordner der Client öffnet und welche Einstellungen er vornimmt. Mit diesem Verfahren kann zum Beispiel auch der Softwaresupport des Hauses das Personal bei Fragen zu Programmen unterstützen.

In Zukunft dürfte sich in Sachen Virtual Network Computing in den Olivetti Research Labs noch einiges tun. So spielt man bereits mit dem Gedanken, eine kommerzielle Version des Programms herauszubringen. Und vielleicht gibt es auch bald CD-Player, die einen VNC-Server installiert haben und von einem Browser aus zu bedienen sind. Wer Fragen zum Thema VNC hat, sollte die VNC-Web-Site von ORL (http://www.orl.co.uk/vnc) besuchen und dort insbesondere das Mailing-Archiv durchforsten.