pHelper: Paket für einfache Fernwartung

Da ich ab und an nicht allzu großen Freunden von Hard- und Software eine helfende Hand leihe(n muß), habe ich mir mal ein paar Gedanken gemacht, wie zB. ein Windows-Rechner leicht fernwartbar gemacht werden kann, ohne auf Sicherheit verzichten oder dem Gegenüber großartig Port Forwarding am Router erklären zu müssen.

Die einfachste Lösung, um Router, Firewalls, Proxies usw. zu überwinden, ohne Ausnahmeregeln (zumindest für Incoming Traffic) zu definieren, stellt wohl ein SSH-Tunnel dar, über den eine VNC-Verbindung aufgebaut wird.

VNC-Verbindung über SSH-Tunnel

Dazu installiert man als erstes auf der eigenen Kiste (A) einen SSH-Server (zB. OpenSSH mit Cygwin) und macht diesen von außen erreichbar. Anschließend wird ein Windows-Account erstellt, mit dem sich der Hilfesuchende (B) einloggen kann. Dem Account ordnet man für die SSH-Verbindung sicherheitshalber keine Shell zu (/bin/false in /etc/passwd).

A teilt nun B das Paßwort für den SSH-Account mit. B startet dann einen WinVNC-Server mit Vorgabekonfiguration, welcher auf Port 5900 (standard) horcht. Mit PuTTY und ebenfalls vorgegebener Konfiguration verbindet sich anschließend B mit A, ohne daß eine Shell gestartet wird. Stattdessen wird ausschließlich ein Remote-Tunnel aufgebaut: Port 5900 auf localhost von B wird dadurch zB. über Port 5995 auf localhost von A erreichbar. Verbindet sich nun A mit einem VNC-Client über Port 5995 mit localhost, landet er getunnelt direkt auf dem VNC-Server von B und kann administrieren.

Version 0.1 des Pakets ist hier herunterladbar. Es enthält ein modifiziertes PuTTY, das Dateien statt Registry-Einträge für die Konfiguration verwendet, WinVNC aus dem TightVNC-Projekt, zwei Regfiles zum Erstellen und Löschen der VNC-Server-Konfiguration in der Registry und zwei aussagekräftige Batchfiles, die die obigen Schritte für B automatisieren.

Das Beispiel-Paßwort für WinVNC lautet not_safe, die beiden explizit gekennzeichneten Sample-Files müssen durch angepaßte eigene ersetzt werden. Dazu PuTTY und WinVNC wie folgt konfigurieren, die Einstellungen speichern und bei letzterem die Registry-Settings exportieren (siehe HKLM\Software\ORL\WinVNC3 und HKCU\Software\ORL\WinVNC3):

PuTTY - no shellPuTTY - tunnel configPuTTY - tunnel configPuTTY - usernamePuTTY - save sessionWinVNC - passwordWinVNC - loopback

Abschließend sind nur noch die Batchfiles anzupassen und eine Testverbindung mit PuTTY aufzubauen, um den Hostkey des SSH-Servers zu speichern. Als Packer empfiehlt sich 7-Zip, zur Erhöhung der Sicherheit können sowohl das Archiv als auch Dateinamen verschlüsselt werden.

Tags:

Eine Antwort hinterlassen