1016894_70013503.jpg

© sxc.hu

Fernbedient

Windows und Linux fernbedienen

17.02.2009
Wer übers Netz auf fremde Rechner zugreift, ist nicht zwangsläufig auf eine Konsole angewiesen. Die richtigen Programme ermöglichen auch die Übertragung des Desktops.

Das Arbeiten auf entfernten Rechner ist beinahe so alt wie das Netzwerk: Sei es, um dort Tätigkeiten auszuführen, die der eigene Rechner nicht erledigen kann, oder um einem Anderen Hilfestellung bei Problemen am PC leisten. Die Anwendungsmöglichkeiten sind schier grenzenlos.

Vor allem fortgeschrittenere Benutzer bevorzugen für den Remote-Zugriff eine Konsolenverbindung, etwa via SSH. Deutlich komfortabler und anwenderfreundlicher geschieht der Fernzugriff über eine grafische Oberfläche. Dafür stellen sowohl Linux als auch Windows bereits vorinstallierte Tools zur Verfügung. Wie Sie diese einrichten und benutzen und was sie taugen zeigt der Bericht ebenso wie mögliche Alternativen dazu.

Desktopfreigabe unter Linux

Alle von EasyLinux unterstützten Distributionen enthalten die Programme KRDC und Krfb, entweder bereits vorinstalliert oder als Zusatzpaket auf dem Installationsdatenträger. Die Idee hinter den Tools ist, dem Anwender ein möglichst einfach zu konfigurierendes Werkzeug an die Hand zu geben, um eine Remoteverbindung mit Desktopübertragung aufzubauen. Während KRDC als Client den Zugriff auf fremde Rechner ermöglicht, erlaubt Krfb als Server den Fernzugriff auf das eigene System.

Sie starten den Server über den Eintrag System / Verbindung zu Fremdrechner / Krfb/KDE (Arbeitsfläche freigeben) im KDE-Menü. Die möglichen Einstellungen des Konfigurationsfensters (Abbildung 1) beschränken sich aufs Wesentliche.

Abbildung 1: Der Fernwartungsserver Krfb bietet nur wenige Einstellungsmöglichkeiten. Wichtige fehlen, etwa das Festlegen, an welcher Netzwerkkarte der Daemon lauschen soll.

Um sicherzustellen, dass nur berechtigte Personen auf den Rechner zugreifen, stellt der Server bei einem Klick auf die Buttons New personal Invitation... und New Email Invitation... Einladungen mit einem zufällig generierten Passwort aus, das Sie dem Verbindungspartner entweder persönlich mitteilen oder das Programm via KMail an diesen versendet. Möchten Sie den Server ohne eine Einladung erreichbar machen, aktivieren Sie im Fenster Configure unter Security die Checkbox vor Allow uninvited connections.

Krfb verwendet das Protokoll RFB, welches auch VNC benutzt. Sie erreichen den Server deswegen nicht nur mit KRDC, sondern auch mit allen anderen Remote-Clients, die dieses Protokoll beherrschen. Dazu zählen unter anderem Ultra- oder TightVNC.

Um auf den Server zuzugreifen, starten Sie unter Linux den KRDC-Client (System / Verbindung zu Fremdrechner / KRDC/KDE4 (Fremdrechner-Client)). Klicken Sie im Hauptfenster auf den Balken Connect to a VNC Remote Desktop und tragen Sie in der Eingabeleiste Remote desktop: am oberen Fensterrand die IP-Adresse des Rechners ein, zu dem der Client eine Verbindung herstellen soll. Um Rechner übers Internet zu erreichen, gilt es jedoch, einige Besonderheiten zu beachten. Der Kasten "Router einstellen" gibt Aufschluss darüber.

Router einstellen

Speziell Nutzer von Breitbandanschlüssen besitzen inzwischen oft einen Router, mit dem sie sich ins Internet verbinden. Dieser leistet gute Dienste beim Absichern des lokalen Netzwerks, indem er Verbindungsversuche aus dem Internet wirkungsvoll verhindert. Davon betroffen sind aber auch gewünschte Kontakte. Abhilfe schafft hier das so genannte Port Forwarding. Dabei wird eine Anfrage aus dem Internet, die an einen definierten Port gerichtet ist, an einen festgelegten Host im lokalen Netz weitergeleitet. Trifft beispielsweise eine Anfrage auf Port 22 ein, können Sie über Regeln festlegen, dass der Router sie besipeilsweise an Port 22 des Rechners mit der IP 192.168.1.34 weiterleitet. Da es aufgrund der Vielzahl verschiedener Geräte nicht möglich ist, an dieser Stelle eine Anleitung abzudrucken, schlagen Sie zum Einrichten des der Port-Weiterleitung im Handbuch Ihres Routers nach. Um es Angreifern nicht allzu einfach zu machen, sollten Sie als Eingangsport einen Port größer als 1024, etwa 22312, verwenden, da Sie damit vermeiden, dass ihn automatisierte Netzwerkscanner einfach finden und ggfs. missbrauchen.

Die vorgestellten Fernwartungstools verwenden folgende Ports, die Sie entsprechend weiterleiten und in der lokalen Firewall freischalten müssen:

* VNC: 5900
* RDP: 3389
* NX: 22 (ssh-getunnelt)

Als zweiter Aspekt erschwert die dynamische IP-Adressvergabe, wie sie die meisten Anschlüsse verwenden, den Kontakt. Hierbei weist der Provider dem Anschluss bei jedem Neuverbinden eine andere IP-Adresse zu. Möchten Sie nur sporadisch auf einen Fernwartungszugang zugreifen, genügt es, dem Kommunikationsparten die aktuelle IP-Adresse mitzuteilen. Sie erfahren sie durch einen Besuch der Webseite [1]. Benötigen Sie einen dauerhaften Zugang, verwenden Sie eine dynamische Namenszuordung, wie sie beispielsweise DynDNS [2] bietet. Viele der handelsüblichen Router bieten inzwischen Dienste, die bei einer Änderung der IP-Adresse diese automatisch an einen solchen Service weiterleiten.

Krfb überträgt den Desktop immer in der Auflösung, die auf dem Rechner, auf dem der Server läuft, eingestellt ist. Fällt diese größer aus als die Auflösung auf dem eigenen Rechner, zeigt der Client den entfernten Desktop nur teilweise im Fenster an, den Rest erreichen Sie über Scrollbalken rechts und unten. Da Windows Bordmittel zum Zugriff auf den Server fehlen, müssen Sie auf Fremdprogramme, etwa TightVNC [3], zurückgreifen, um den Desktop auf den eigenen Rechner zu übertragen.

In der Praxis erweist sich der Server in der vorliegenden Version allerdings als unbrauchbar, da es unter allen getesteten Versionen zu erheblichen Darstellungsfehlern (Abbildung 2) kam, die es unmöglich machten, damit zu arbeiten. Desweiteren erwies sich das Programm als relativ unstabil und stürzte des Öfteren ohne ersichtlichen Grund ab.

Abbildung 2: Erhebliche Abbildungsfehler verhindern die Arbeit mit der Fernwartungssoftware Krfb, die viele Distributionen als Standardfernwartungsprogramm mitinstallieren.

Ein weiteres Handicap, das vor allem sicherheitsbewussten Zeitgenossen die Arbeit mit Krfb vergällen dürfte, ist die Tatsache, dass der Server sämtliche Daten unverschlüsselt überträgt. Deswegen – und wegen des hohen Bandbreitenbedarfs – eignet sich dieses Tool in erster Linie zum Zugriff im lokalen Netzwerk, sofern es denn in den nächsten Versionen seinen vorgesehenen Dienst zuverlässig verrichtet.

Desktopfreigabe unter Windows

Nicht nur Linux, sondern auch Windows XP Professional und Vista enthalten Werkzeuge, die den Fernzugriff auf den Desktop ermöglichen. Um sie zu konfigurieren, klicken Sie in der Systemsteuerung auf System und wechseln in den Reiter Remote. Aktivieren Sie hier in der Rubrik Remotedesktop die Checkbox Benuter erlauben, eine Remotedesktopverbindunge herzustellen und wählen Sie mit einem Klick auf Remotebenutzer auswählen... mit welchem Benutzerkonto sich der Anwender von außen anmelden darf (Abbildung 3).

Abbildung 3: Die Desktopfreigabe von Windows erlaubt dank seines geringen Ressourcenverbrauchs die Arbeit am entfernten Rechner wenn dieser nur über ISDN oder Analog-Modem mit dem Intenet verbunden ist.

Das Tool von Microsoft verwendet als Übertragungsprotokoll RDP, das sich aufgrund seines geringen Ressourcenverbrauchs deutlich besser als das von Krfb verwendete RFB zur Fernwartung, auch über Netze mit geringer Bandbreite, eignet. Ein weiterer Vorteil gegenüber dem Linux-Pendant ist die Konfigurierbarkeit der Bildschirmgröße. Während Krfb den Desktop mit der Auflösung übermittelt, die der Anwender verwendet, erlaubt das Windows-Tool auf der Client-Seite eine benutzerdefinierte Einstellung der Desktopgröße.

Da der KRDC-Client auch dieses Protokoll beherrscht, gestaltet sich der Fernzugriff von Linux auf Windows-Maschinen erfreulich unkompliziert. Nach der Wahl von Connect to a Windows Remote Desktop (RDP) und der Eingabe der IP-Adresse im Hauptfenster des Clients erscheint ein Konfigurationsfenster, in dem Sie unter anderem die Bildschirmgröße, Farbtiefe und das verwendete Keyboard-Layout festlegen. Nach der Eingabe des Benutzernamens und des Passworts und einem abschließenden Klick auf Ok loggt Sie der Client auf dem fremden Rechner ein (Abbildung 4). Um zu verhindern, dass Fremde die Verbindung abhören, verschlüsselt der Windows-Server die Daten mit dem Chiffrieralgorithmus RC4.

Abbildung 4: Da Krfb auch das Protokoll RDP unterstützt, gestaltet sich der Zugriff auf Windows-Desktopfreigaben mit Linux sehr komfortabel und unproblematisch.

Alternative NX

Eine Alternative zum unbenutzbaren Krfb bietet die italienische Firma Nomachine [4] mit ihrem freien NX-Server für Linux. Zwar besitzt das Programm keine grafische Benutzeroberfläche, da sich das rudimentäre Einrichten jedoch auf wenige Arbeitsschritte beschränkt, ist diese für den hier vorgestellten Anwendungsfall auch nicht erforderlich. Da der NX-Server den SSH-Server zum Tunneln des Datenstroms verwendet, installieren Sie, falls noch nicht vorhanden, diesen über den Paketmanager Ihrer Distribution. Um ihn zu starten, öffnen Sie ein Terminal mit der Eingabe von konsole im Schnellstartfenster und tippen sudo /etc/init.d/sshd start.

Danach laden Sie von der Downloadseite [5] die für Ihre Distribution passenden Pakete Client, Node und Server herunter. Entgegen der Beschreibung läuft NX problemlos mit modernen Linux-Systemen wie OpenSuse 11.0/11.1, Mandriva 2009 und Kubuntu 8.10. Nach dem Download installieren Sie zuerst den Client, danach den Node und am Schluss den Server. Es ist wichtig, diese Reihenfolge einzuhalten, da andernfalls die Paketmanager die Installation wegen ungelösten Abhängigkeiten abbrechen. Die Installation beginnen Sie am einfachsten mit einem Klick auf die heruntergeladenen Pakete, was automatisch den Paketmanager startet, der eventuelle weitere Abhängigkeiten auflöst. Sollte es zu Problemen kommen, installieren Sie die Pakete manuell mit der Eingabe von sudo rpm -ivh paketname.rpm bzw. sudo dpkg -i Paketname.deb in der Konsole. Nach der erfolgreichen Installation gilt es, die Konfigurationsdatei des Servers anzupassen. Öffnen Sie dafür den Texteditor KWrite mit Root-Rechten mit der Eingabe von kdesu kwrite im Schnellstartfenster [Alt]+[F2]. Öffnen Sie danach die Datei /usr/NX/etc/server.cfg, suchen Sie den Abschnitt #SSHDPort = "22" und entfernen Sie die Raute (#) vor dem Eintrag. Speichern Sie die Änderungen und fahren Sie den Server mit der Eingabe von sudo /usr/NX/bin/nxserver --restart in der Konsole erneut hoch. Danach ist der Dienst einsatzbereit und wartet auf Port 22 auf Verbindungsanfragen. Auch hier gilt: Steht der Rechner hinter einem Router und möchten Sie ihn übers Internet erreichen, müssen Sie die Konfiguration entsprechend anpassen.

Da Nomachine ein eigenes Protokoll verwendet, benötigen Sie zum Kontakt mit dem Server den kostenfreien NX-Client, den Nomachine sowohl für Linux als auch für Windows und Mac zum Download bereitstellt [5]. Starten Sie das Programm nach der Installation mit einem Klick auf den KDE-Menü-Eintrag Internet / NX Client for Linux / NX Client for Linux. Daraufhin erscheint ein Konfigurationsfenster (Abbildung 5), das Ihnen ungleich mehr Einstellungen ermöglicht, als beispielsweise der KRDC. Im Reiter General legen Sie zunächst unter Server die IP-Adresse und Port des Zielservers fest. Unter Desktop stellen Sie das System ein, mit dem Sie sich verbinden möchten. Der NX-Client erlaubt nämlich nicht nur das Verbinden zu Servern, die mit dem eigenen Protokoll arbeiten, sondern unterstützt auch RDP (Windows) und RFB (VNC). Wählen Sie im ersten Feld Unix, erscheint im zweiten die Auswahl zwischen KDE und GNOME. Je nachdem, welche Desktopumgebung der Zielrechner mit dem NX-Server verwendet, wählen Sie eine davon.

Abbildung 5: Der NX-Client beherrscht nicht nur das eigene Protokoll sondern eignet sich auch vorzüglich zum Kontakt mit VNC- oder RDP-Servern.

Mit dem darunterliegenden Schiebregler legen Sie fest, mit welcher Bandbreite der entfernte Rechner ans Netz angeschlossen ist. Wählen Sie MODEM, arbeiten Sie zwar auch auf Rechnern mit einer geringen Netzwerkbandbreite noch flüssig, müssen aber einige Abstriche bei der Darstellung in Kauf nehmen. Im Feld Display stellen Sie ein, in welcher Größe der Desktop übertragen wird. Available area öffnet beispielsweise ein Fenster mit der Auflösung Ihres Desktops, und stellt den entfernten Bildschirm darin dar. Ähnlich wie der Windows-Service verwendet NX mit der hier vorgestellten Konfiguration die Login-Daten lokal eingerichteter Benutzer. Um sich anzumelden geben Sie deshalb den Benutzernamen und das Kennwort eines Nutzers des entfernten Systems ein.

Im Betrieb bereitete der NX-Server kaum Probleme. Es kam weder zu Verbindungsabbrüchen noch zu Fehlern in der Darstellung. Auch die Arbeit an Rechnern übers Internet verlief problemlos. Mit einer kleinen Schwäche hat NX aber doch zu kämpfen: Bei viel Bewegung auf dem Desktop steigt die Systemlast auf dem Rechner auf bis zu 80% an. Das liegt daran, dass der NX-Server damit beschäftigt ist, die schnell wechselnden Informationen zu komprimieren, und der SSH-Daemon diese anschließend verschlüsseln muss. Weitergehende Informationen zur Arbeit mit NX finden Sie unter [6].

Fazit

Während der Zugriff auf Windows-Rechner mit Linux-Bordmitteln keinerlei Probleme bereitet, ist der bei vielen Distributionen vorinstallierte Krfb wegen seiner unbrauchbaren Darstellung schlicht ungeeignet, um damit zu arbeiten. Abhilfe schafft hier der NX-Server, den auch ungeübte Anwender mit wenigen Handgriffen auf dem System einrichten. Er stellt den Desktop auf dem Fremdrechner fehlerlos dar und erlaubt aufgrund der transparenten Komprimierung des Datenstroms auch die Arbeit auf Rechnern, die lediglich mit ISDN oder Analogmodem ans Internet angeschlossen sind.

Glossar

RFB

Das Remote Framebuffer Protocol ermöglicht den Zugriff auf die grafischen Benutzeroberflächen (GUI) anderer Computer. Es verwendet als Standardport 5900 und überträgt die jeweiligen Änderungen des Bildschirminhalts als Bitmap-Grafik an den Client.

RDP

Das Remote Desktop Protocol von Microsoft eignet sich dazu, den Desktop auf entfernten Rechnern darzustellen und zu steuern. Es verwendet den Chiffrieralgorithmus RC 4 um die Verbindung zu verschlüsseln.

Infos

[1] Eigene IP-Adresse ermitteln: http://meineipadresse.de

[2] DynDNS: http://dyndns.org

[3] TightVNC: http://www.tightvnc.com

[4] Nomachine: http://www.nomachine.com

[5] NX Downloads: http://www.nomachine.com/select-package.php?os=linux&id=1

[6] NX-Artrikel: Kristian Kissling, "Work@home", LinuxUser 03/2008, S 78 ff., http://www.linux-user.de/ausgabe/2008/03/078/index.html

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Related content

Kommentare