Windows-Fernsteuerung auf Doppelklick

Solange an einem PC die Internetverbindung funktioniert, lassen sich Macken übers Netz ausbügeln. Ein universelles Mittel ist VNC, das mit einer Erweiterung vom Hilfesuchenden nicht mehr als einen Doppelklick erfordert.

In Pocket speichern vorlesen Druckansicht 31 Kommentare lesen
Lesezeit: 12 Min.
Von
  • Johannes Endres
Inhaltsverzeichnis

Wer als Experte einem weniger erfahrenen Anwender bei PC-Problemchen helfen will, muss nicht unbedingt hinfahren oder sich den Rechner bringen lassen. Denn mancher kleine Fehler in der Windows-Konfiguration lässt sich mit wenigen Klicks beheben. Dafür genügt oft ein Zugang übers Internet, mit dessen Hilfe der Helfer den PC fernsteuert. Auch nach einer ambulanten Operation ist es sehr hilfreich, dem PC-Besitzer virtuell über die Schulter sehen zu können. Denn nach einer solchen Verbesserung verhält sich das System an einigen Stellen anders als vorher, was zunächst zu weiteren Fragen eines unbedarften Anwenders führen kann. Die lassen sich am schnellsten beantworten, wenn beide per Netzwerk gleichzeitig auf den Bildschirm sehen.

Sowohl fürs Fummeln aus der Ferne als auch für die Direkthilfe bietet Windows Bordmittel. Die eignen sich jedoch nicht in jeder Situation. Eine Spezialversion der Open-Source-Fernsteuerung VNC ist dagegen universell einsetzbar und fordert vom Hilfesuchenden nur ein paar Klicks.

Seit Windows XP gehört die "Remoteunterstützung" zum Lieferumfang aller Desktop-Versionen des Betriebssytems. Um damit eine Sitzung aufzubauen, klickt der Hilfesuchende im "Hilfe- und Supportcenter" ein gutes halbes Dutzend Links und Knöpfe und erstellt schließlich eine Einladungsdatei , die er dem Helfer zustellt, etwa per Mail. Neben dem Aufwand gibt es ein grundsätzliches Problem: Die Einladung funktioniert nur ordentlich, wenn sich der Problem-PC direkt ins Internet einwählt. Hängt er jedoch über einen der üblichen Router am Netz, ist an dessen Konfiguration erhebliche Fummelei erforderlich.

Denn der PC des Helfers versucht nach dem Doppelklick auf die Einladungsdatei eine Verbindung zum Problem-PC aufzubauen. Das scheitert zunächst an der falschen IP-Adresse, denn in der Einladung steht die lokale Adresse des Problem-PCs. Selbst wenn man sie durch die externe Internetadresse des Routers ersetzt, geht nichts weiter. Denn die Network Address Translation (NAT) im Router weiß mit diesen eingehenden Datenpaketen nichts anzufangen und verwirft sie. Da der Hilfsbedürftige wohl auch mit Begriffen wie "Port Forwarding", "Feste IP im LAN" und "Paketfilterregel" wenig anfangen kann, ist ihm die Umstellung seines Routers eigentlich nicht zuzumuten.

Um das NAT-Problem zu umgehen, muss also zusätzliche Software her. Da ein Fernwartungszugang auch eine Sicherheitslücke sein kann, sollte er nur erreichbar sein, wenn der Anwender ihn ausdrücklich freischaltet. Und da solche Hilfe hoffentlich nicht täglich sein muss, empfiehlt sich Software, die ohne Installation auskommt.

Diese beiden Anforderungen erfüllen eine Vielzahl von Programmen, zum Beispiel ShowMyPC, Teamviewer, LogMeInRescue oder Copilot. Da Verbindungen vom PC durch die NAT des Routers nach draußen immer funktionieren, verbinden sich bei diesen Systemen beide Partner mit einem externen Server beim Anbieter der Software. Solche Systeme funktionieren recht gut, haben jedoch drei Nachteile: Weil der Betrieb des Servers etwas kostet, verlangen die Anbieter beim regelmäßigen oder professionellen Einsatz einen Obolus. Außerdem existiert die Software meist nur für Windows, und schließlich kann der Betreiber des Servers prinzipiell den gesamten Datenverkehr einsehen.

Dank VNC funktioniert die Fernsteuerung auch, wenn der Helfende keinen Windows-PC zur Verfügung hat.

Die Lösung bringt eine spezielle Version der Open-Source-Fernsteuerung VNC. UltraVNC Single Click (SC) ist für den Hilfsbedürftigen genauso einfach und kommt ohne externen Server aus. Außerdem lässt es dem Helfer die freie Wahl des Betriebssystems, denn es setzt lediglich einen VNC-Viewer voraus, der den Listen-Modus beherrscht. So etwas gibt es für alle verbreiteten Systeme.Auf der Seite des Hilfsbedürftigen funktioniert UltraVNC SC mit Windows-Versionen von 98 bis 7.

EineNormalerweise läuft bei VNC auf dem fernzusteuernden Rechner ein Server-Programm, das den Desktop übers Netzwerk zur Verfügung stellt und Eingaben entgegennimmt. Darauf greift der Helfer mit seinem VNC-Viewer zu. Wenn der VNC-Server hinter einem NAT-Router steht, hat dieses Verfahren dasselbe Problem wie die Remoteunterstützung. Der Trick besteht nun darin, die Verbindung nicht vom Helfer in Richtung des Hilfsbedürftigen aufzubauen, sondern umgekehrt. So passiert sie den Router beim Hilfsempfänger ohne Anpassungen an der Konfiguration. Lediglich der Helfer muss auf seinem Router eine Port-Weiterleitung einrichten. Für einen Experten, der anderen über das Internet helfen kann, sollte das keine Hürde darstellen.

Ein Online-Generator auf www.heise.de erzeugt mit wenigen Informationen, die der Helfer beisteuert, das Hilfeprogramm.

Im Einzelnen stehen für den Helfer vier Schritte an: Sofern er nicht mit einem Internetzugang mit fester IP-Adresse gesegnet ist, besorgt er sich zuerst einen dynamischen DNS-Namen, zum Beispiel bei DynDNS.org. Aktuelle Router verknüpfen ihn automatisch mit der IP-Adresse, die sie bei der Einwahl erhalten. Unter diesem unveränderlichen DynDNS-Namen soll später der VNC-Server den VNC-Viewer des Experten erreichen.

Damit der Verbindungsaufbau den Hilfesuchenden nicht überfordert, schickt der Helfer ihm ein angepasstes Windows-Programm, das alle nötigen Einstellungen enthält. Die Programmierer von UltraVNC stellen zwar einen eigenen "Online Creator" zur Verfügung, der solche Programme erzeugt. Doch wir haben den Vorgang noch etwas vereinfacht und bieten Ihnen einen eigenen Generator an.

In ein Web-Formular tragen Sie einfach Ihren DynDNS-Namen ein sowie den esternen TCP-Port, auf dem der VNC-Viewer später lauscht. Die Vorgabe des VNC-Viewers lautet 5500, aber die Portnummer ist beliebig. Um den Zugang vor Angreifern zu verbergen, die diesen Port über verschiedene Adressen scannen, empfehlen wir eine Portnummer oberhalb von 50 000.

Hinzu kommen noch drei kurze erklärende Textfelder, die der Hilfsbedürftige zu sehen bekommt. Hier tragen Sie zum Beispiel Kontaktdaten ein. Unser Online-Generator erzeugt dann das Programm, das Sie herunterladen und dem Hilfesuchenden zustellen. Wer den PC eines potenziell Hilfsbedürftigen gerade zur ambulanten Pflege vor Ort hat, sollte dieses Programm gleich darauf ablegen.

Nur der Helfende muss an seinem Router ein Port-Forwarding einstellen. Der Hilfsempfänger braucht sich damit nicht herumzuärgern.

Nun ist die Port-Weiterleitung an der Reihe. Der Router auf Helfer-Seite muss den in das Online-Formular eingetragenen TCP-Port an den PC durchreichen. Viele Geräte bieten die Möglichkeit, eine Portweiterleitung zu deaktivieren, ohne sie zu löschen. Damit kann der Helfer sie eintragen und nur bei Bedarf scharfschalten.

Zuletzt muss ein passender VNC-Viewer her. Unter Windows empfiehlt sich der von UltraVNC, da er über den VNC-Standard hinaus Kunststückchen wie Dateitransfers und einen Chat beherrscht. Wer selbst keinen VNC-Server braucht, lädt am Besten die ZIP-Version von UltraVNC herunter und entnimmt nur vncviewer.exe daraus. Um später nicht auf der Kommandozeile herumzuhampeln, legt man gleich eine Verknüpfung an und trägt in deren Eigenschaften in das Feld "Ziel" die Option -listen hinter den Programmnamen ein. Falls der Router die eingehenden Verbindungen nicht an den Standard-Port 5500 weiterleitet, kommt hinter -listen noch die Portnummer. Wenn keine Verbindungen zu Stande kommen, steht eventuell die Windows-Firewall im Weg. Die einfachste Lösung ist, eine Ausnahme für das Programm vncviewer.exe zu definieren.

Linux-Distributionen bringen mindestens eine Version von VNC mit. Der darin enthaltene Viewer wird wie unter Windows mit der Option -listen und gegebenenfalls mit der TCP-Portnummer aufgerufen. Probleme traten jedoch zwischen dem UltraVNC-SC-Server und einem Linux-RealVNC-Viewer auf, da der Server anscheinend die falsche VNC-Protokollversion an den Viewer übermittelt. Bei der aktuellen Version des kostenlosen VNC Enterprise Edition Viewer for Linux kann man die Protokollversion per Kommandozeile mit dem Parameter -Protocol3.3 festlegen.

Für Mac OS X existieren zwar auch mehrere VNC-Fassungen, doch nach unseren Erfahrungen nimmt nur der Viewer von RealVNC die Verbindungen von UltraVNC SC korrekt an. Er ist Bestandteil der Enterprise Edition von RealVNC, die auf der Web-Seite als kostenpflichtig markiert ist. Allerdings betrifft das nur den Server. Wenn man RealVNC unter Mac OS X ohne Key installiert, kann man den Viewer trotzdem benutzen. Der Listen-Modus wird über den Menüpunkt "Launch Listener" aktiviert.

Mit UltraVNC SC muss der hilfesuchende Anwender nur ein angepasstes Programm starten und nach Absprache per Doppelklick die Desktop-Verbindung zum Experten herstellen.

Damit in Mac OS X 10.4 (Tiger) die Firewall den TCP-Port nicht blockiert, legt man in den Systemeinstellungen unter Sharing eine neue Regel an. Leopard (Mac OS X 10.5) fragt beim Start des Listener automatisch nach, ob es ein Loch in die Firewall bohren soll.

Wenn der Ernstfall eintritt und die Verbindung zum Desktop gebraucht wird, kontrolliert der Helfer zunächst die Port-Weiterleitung und startet dann seinen Viewer im Listen-Modus. Anschließend bittet er den hilfsbedürftigen Anwender, das vorgefertigte Programm zu starten. Es erscheint zunächst ein Dialog wie im Bild rechts. Erst ein Doppelklick auf den einzigen Eintrag im linken Listenfeld startet die Verbindung. Beide Anwender sehen nun denselben Desktop und können simultan mit Maus und Tastatur darauf arbeiten. Der Helfer trennt die Verbindung, indem er seinen Viewer beendet. Der Hilfsempfänger kann dafür jederzeit den Punkt "Close" im Kontextmenü des Tray-Icons benutzen.

Unter Windows 7 und Vista stehen UltraVNC SC zwei Windows-Funktionen im Weg: die Glas-Effekte der Aero-Oberfläche und die Benutzerkontensteuerung (User Account Control, UAC). Die durchsichtigen Fensterränder führen zu so viel zusätzlichem Netzwerkverkehr, dass sich Vista nicht sinnvoll fernsteuern lässt. Die seit Februar 2010 freigeschaltete Version unseres Online-Tools räumt mit diesen Schwächen auf, in dem sie eine aktuelle Fassung von UltarVNC einbaut. Sie schaltet automatisch Aero ab und beim Ende der Sitzung wieder ein und UAC-Fenster unterbrechen die Verbindung nicht mehr.

Außerdem gibt es nun eine neue Option "UAC_DIS", mit der der Hilfesuchende nur einmal zu Beginn der Sitzung einen UAC-Dialog abnicken muss. Doch der UltraVNC-Server schaltet dann die UAC ganz ab und erst zum Ende der Sitzung wieder ein. Wenn jedoch der VNC-Server oder der PC abstürzen oder der User den Prozess versehentlich abwürgt, bleibt die UAC deaktiviert. Deshalb haben wir uns entschieden, diese Option in unserem Online-Generator nicht zu setzen

Wenn der Hilfesuchende das Programm mit Administrator-Rechten startet, bleiben UAC-Abfragen aus.

Das bringt nur die kleine Einschränkung mit sich, dass der Helfer seinen Schützling bei jedem UAC-Dialog um einen Klick auf "Ja" bitten muss. Aber die ganze Software ist ja ohnehin für Hilfesitzungen gedacht, bei denen man parallel miteinander telefoniert oder den Chat innerhalb von UltraVNC benutzt.

Eine Sicherheitsfunktion mag bei der ersten Sitzung verwirren: Solange ein Fenster mit per UAC erhöhten Rechten offen ist, kann man aus der Ferne nicht steuern, sondern nur zusehen. Wenn es nicht gelingt, dem Geholfenen die richtigen Klicks vorzusagen, muss dieser das Hilfeprogramm per Rechtsklick als Administrator starten. Dann gibts keine Nachfragen und der Helfer kann aus der Ferne alle Knöpfchen drücken.

Windows**7 hält das Programm für ein Installationsprogramm und fragt nach Ende der ersten Sitzung, ob die Installation erfolgreich war. Als Helfer sollten Sie Ihren Gegenpart telefonisch darauf vorbereiten und ihm empfehlen "Das Programm wurde richtig installiert" zu klicken. Windows merkt sich diese Einstellung dann anhand des Programmnamens und -pfades für spätere Aufrufe.

Wer selbst mit den Einstellungen experimentieren will, kann sich ein UltraVNC-SC-Programm auf dem eigenen PC zusammenbasteln. Denn im Kern ist es nicht anderes als ein selbstextrahierendes Archiv, das nach dem Entpacken automatisch das enthaltene Programm startet. Diese Funktion steckt in der Datei 7zS.sfx, die zum Open-Source-Packer 7-Zip gehört.

In das 7-Zip-Archiv gehören der eigentliche VNC-Server winvnc.exe in der Single-Click-Version und dessen Konfigurationsdatei helpdesk.txt. Deren Syntax erklärt eine Webseite des UltraVNC-Projekts. Dazu können noch einige Icons kommen. Eine komplette Beispiel-Konfiguration gibt es ebenfalls bei UltraVNC zum Download.

Sind alle nötigen Dateien per 7-Zip gepackt, erzeugt der Befehl

copy /b 7zS.sfx+config.txt+archiv.7z hilfe.exe

das Programm hilfe.exe für den hilfsbedürftigen Anwender. Was in der Textdatei config.txt stehen muss, damit der Selbstextrahierer das richtige entpackte Programm startet, beschreibt die Dokumentation im Download-Archiv.

Statt hier direkt den VNC-Server anzuwerfen, könnte man zuerst eine Batch-Datei oder ein Skript aufrufen, das Vista VNC-freundlich umkonfiguriert. Eigenen Experimenten stehen Tür und Tor offen. (rek)