Remote Desktop mit Ultra VNC

Anthony DOUANN, 123RF

Scheibenwischer

Eine ganze Reihe von Remote-Access-Tools unter Linux, Mac OS und Windows basiert auf dem VNC-Protokoll. Dieser Artikel verrät, wieso Ultra VNC von allen freien Lösungen die beste Wahl ist.
Im Zentrum stehen dieses Mal Tools, mit denen sich Administratoren das Leben einfacher machen, indem sie Aufgaben automatisieren und skripten: ... (mehr)

Die phantasievollen Namen moderner Fernwartungssoftware wie Netviewer, Teamviewer, PC Visit, Radmin, Beam your Screen, Mikogo, Copilot, Show My PC, Log Me In Rescue suggerieren Individualität und technologische Eigenständigkeit – tatsächlich tun sie mehr oder weniger alle das Gleiche.

Die schiere Anzahl der verfügbaren Remote-Control-Lösungen für Windows ist entweder ein Indiz dafür, dass offenbar ein enormer Bedarf an einfach zu handhabenden, leistungsfähigen und sicheren Fernzugriffs-Programmen besteht oder dass sich Anwendungen dieser Art besonders einfach entwickeln lassen, weil die verwendeten Protokolle und Standards frei verfügbar sind.

Auch beim Definieren des Einsatzzwecks haben sich die jeweiligen Marketing-Abteilungen mächtig ins Zeug gelegt und vermarkten ihre Produkte wahlweise als Desktop-Sharing-Software für Online-Meetings, Präsentationen, Remote-Support, Webkonferenzen und so weiter.

In jedem Fall geht es bei Software dieser Art darum, den Desktop eines Rechners übers LAN oder Internet anzuzeigen und Maus- sowie Tastatureingaben durchzureichen. Weitergehende Funktionen ermöglichen im Einzelfall auch das Durchreichen von am Remote-Server angeschlossener Hardware oder das komfortable Übertragen von Dateien. Wer dabei Server und wer Client ist, ist je nach Lösung entweder klar geregelt, sofern es sich um separate Programme handelt, oder Definitionssache, falls das jeweilige Tool beides kann, woraus sich auch seine Benutzerphilosophie ableitet.

Viele der verfügbaren Lösungen ermöglichen darüber hinaus auch von Haus aus oder mit Hilfe von Plugins einen Webzugriff im Browser. Die Grenzen sind hierbei fließend. Im Fall der Fernwartung gibt der Hilfesuchende seinen Desktop für den Zugriff durch den Experten frei, der dann das Steuern des Clients übernimmt. Andersrum kann der Experte auch seinen Rechner als Server zum Zeigen und Demonstrieren von Interaktionen auf dem Client-Bildschirm nutzen.

Ein anderes vorstellbares Einsatzszenario ermöglicht dem Admin den grafischen und damit komfortablen Fernzugriff auf diverse Server, virtuelle Maschinen oder Arbeitsplätze, ohne sein Büro verlassen zu müssen (siehe dazu auch den Kasten "Zuverlässig"). Der Nutzungsphilosophie solcher Lösungen sind kaum Grenzen gesetzt.

Zuverlässig

Im Grunde genommen setzt Fernwartung mit Remote-Control-Programmen, die auf RDP oder VNC basieren, immer voraus, dass auf der Gegenseite das Betriebssystem gestartet ist und fehlerfrei seinen Dienst tut. Fernwartung bedeutet aber im Ernstfall nicht nur den Einsatz bereitgestellter Helpdesk-Funktionen, sondern sie soll dem Wartungsexperten oder Techniker auch eine Diagnose-Option an die Hand geben, die auf der Gegenseite kein funktionierendes Betriebssystem samt Netzwerkstack voraussetzt, sondern schon auf der Hardware-Ebene ansetzt. Damit wäre eine Ferndiagnose beziehungsweise Wartung auch dann durchführbar, wenn der PC auf der Gegenseite mit einem Bluescreen hängt oder der Benutzer dessen Bios-Einstellungen durchforstet.

Möglich wird ein solches Szenario durch spezielle Funktionen auf Prozessorebene, etwa Intels Active Management Technology (AMT). Leider gibt es Intels AMT-Features bisher nur bei CPUs der V-Pro-Reihe mit Chipsätzen der Q-Serie, etwa Core i5 vPro oder Core i7 vPro, welche nur in Business-PCs verbaut werden. Dafür braucht man zum Fernzugriff in so einem Remote-KVM-Szenario im Prinzip keine teure Zusatzsoftware, trotzdem unterstützt beispielsweise das kommerzielle Radmin Intels AMT-Technologie [6]. Unter [7] lässt sich nachlesen, wie AMT im Detail funktioniert.

Problemfall Windows 7

In Windows 7 ist bekanntlich eine Remote-Desktop-Technologie auf der Basis von Microsofts proprietärem RDP-Protokoll eingebaut. Wer quer durch die Microsoft-Landschaft auch XP- oder Vista-Clients fernsteuern oder sich von diesen fernsteuern lassen möchte, muss entweder mit erheblichem Konfigurationsaufwand rechnen oder Zusatzsoftware installieren.

Das moderne SSTP-Protokoll wird überdies nur von Windows Server 2008 R2 unterstützt und nur diese Microsoft-Server-Version bietet weiter reichende Fernzugriffsfunktionen. Wer aber auch von Nicht-Windows-Clients auf seinen Windows-Desktop zugreifen möchte und über den Funktionsumfang anderer Remote-Acces-Lösungen hinausreichende Features braucht, sollte sich Ultra VNC näher ansehen.

Alternative

Das für den Einsatz unter Windows konzipierte Ultra VNC setzt für die Übertragung der Bildschirminhalte, Mausbewegungen und Tastatureingaben auf das etwas betagte VNC-Protokoll, das auf dem Remote Framebuffer Protocol basiert. VNC geht ursprünglich auf eine Entwicklung des Oracle Olivetti Research Laboratory (ORL) Mitte der 90er Jahre zurück, die 1999 von AT&T aufgekauft, aber dann 2002 geschlossen wurde.

Das Remote Framebuffer Protocol ist zwar im Gegensatz zu anderer Fernwartungssoftware plattformunabhängig, aber mangels Kompression relativ langsam und zudem unsicher, weil VNC in seiner Ur-Variante weder Accountdaten noch Nutzdaten verschlüsselt überträgt. Die Kombination mit einem Secure Shell Server (SSH) sichert zwar die VNC-Übertragung, die Handhabung wird dadurch aber komplizierter.

Ultra VNC löst dieses Problem mit zusätzlichen Modulen, die die Übertragung verschlüsseln. Außerdem haben die Ultra-VNC-Entwickler effizientere Kompressionsalgorithmen und eine leistungsfähige Technik zum Abfangen des Serverbildschirms implementiert. Allerdings macht der Ultra-VNC-Server intensiven Gebrauch von Windows-Technologien. Mit verschiedenen Erweiterungen wie beispielsweise »SingleClick« ist sogar die Installation einer Clientsoftware überflüssig.

Unter Kennern genießt Ultra VNC daher seit Jahren einen guten Ruf, insbesondere wegen des großen Funktionsumfangs, etwa bei der Grafikdarstellung am Client, wozu ein eigener Ultra-VNC-Mirror-Treiber bereitsteht, der auf dem Remote-Rechner als Videotreiber zu installieren ist. Er greift die Bildschirminhalte quasi auf Kernelebene ab. Außerdem kann ein Viewer dank Multicast mehrere Server steuern. Prinzipiell ist es auch möglich, mit einen Ultra-VNC-Viewer gewöhnliche VNC-Server zu kontaktieren oder mit einem Ultra-VNC-Server gewöhnliche VNC-Clients zu bedienen, allerdings stehen dann nur die normalen VNC-Funktionen auf Basis des Remote-Framebuffer-Protokolls zur Verfügung und nicht der volle Funktionsumfang von Ultra VNC.

Zudem enthält Ultra VNC einen Repeater, der VNC-Sitzungen über die Grenzen eines NAT-Gateway vermitteln kann. Schließlich finden sich auf der Hersteller-Website zahllose weitere interessante Plugins, die zum Beispiel den Betrieb durch eine Firewall ermöglichen oder eine Mini-Clientversion, die sich direkt über das Web installieren lässt und nach Benutzung selbst deinstalliert. Interessant ist vor allem der erwähnte Videotreiber, der die CPU-Last bei der Bildübertragung deutlich senkt (Abbildung 1).

Abbildung 1: Interessant: Der mitgelieferte Ultra-VNC-Mirror-Treiber reduziert die CPU-Last beim Übertragen der Bildschirminhalte.

Ultra VNC ist unter alle VNC-Implementierungen diejenige mit der aktivsten Community samt Entwickler-Umfeld. Es besteht aus einem Server und einem Client und implementiert normale End-to-End-Verbindungen auf TCP/IP-Basis. Für den Client stehen mehrere Varianten zur Verfügung, neben einem nativen Windows-Programm auch ein in Java geschriebener Client, der sich zum Beispiel auch unter Linux nutzen lässt. Ultra VNC bringt dafür einen eigenen Webserver mit. Der Funktionsumfang des Windows-Clients ist allerdings erheblich größer. Außerdem gibt es spezielle Viewer für Blackberrys oder PDAs.

Linux-Nutzer können selbstverständlich auch einen der zahlreichen VNC-Clients (zum Beispiel Tight VNC) einsetzen, dann allerdings mit einem auf die Möglichkeiten von reinem VNC reduzierten Funktionsumfang und mangels Kompression auch geringerer Performance. Mac-Anwender können neben dem Java-Client außerdem das kostenpflichtige Tool Jollys Fast VNC [2] verwenden, um einen Windows-Rechner fernzusteuern. Der Server selbst ist in C++ programmiert und steht unter der GPL für den freien Download [3] zur Verfügung.

Übrigens transferiert Ultra VNC auf Wunsch auch Dateien, und ein eingebauter Chat verbindet den Experten mit den Hilfesuchenden. Ultra VNC schützt den Zugang auf Wunsch mit einem DES-Passwort. Sicherer ist es, von vornherein nur solche Nutzer zuzulassen, die auf dem Windows-Rechner einen Account besitzen. Ultra VNC beherrscht dazu neben MS-Logon-I für NT-Domänen auch MS-Logon-II zur Authentifizierung im Active Directory. Allerdings ist der erste Weg ebenfalls prinzipiell unsicher, der zweite setzt einen Windows-Domänen-Controller voraus.

Das aktuelle Ultra VNC 1.0.8.2 beherrscht auch Vistas Benutzerkontensteuerung UAC. Alternativ lässt sich ein kostenloses DSM-Plugin anbinden, das eine sichere RC4- beziehungsweise AES-Verschlüsselung zwischen Ultra-VNC-Server und -Viewer bis zu einer Schlüssellänge von 128 Bit ermöglicht. Mit Hilfe des RC4-DSM-Plugin kann der Anwender eine individuelle RC4-Key-Datei generieren, die sowohl beim Ultra-VNC-Server als auch beim Viewer vorhanden sein muss, damit die Verschlüsselung klappt.

Zum Einrichten der Verschlüsselung verschiebt der Admin das Plugin »MSRC4Plugin.dsm« ins Ultra-VNC-Verzeichnis und aktiviert es. Den Verbindungsschlüssel erzeugt er in den Plugin-Einstellungen, was nicht eben intuitiv ist. Bei verschlüsselten Verbindungen lassen sich jedoch keine Linux-VNC-Clients nutzen.

comments powered by Disqus

Artikel der Woche

Setup eines Kubernetes-Clusters mit Kops

Vor allem für Testinstallationen von Kubernetes gibt es einige Lösungen wie Kubeadm und Minikube. Für das Setup eines Kubernetes-Clusters in Cloud-Umgebungen hat sich Kops als Mittel der Wahl bewährt. Wir beschreiben seine Fähigkeiten und geben eine Anleitung für den praktischen Einsatz. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Container

Wie setzen Sie Container ein?

  • Gar nicht
  • Docker standalone
  • Docker mit Kubernetes
  • Docker mit Swarm
  • Docker mit anderem Management
  • LXC/LXD
  • Rocket
  • CRI-O auf Kubernetes
  • Container auf vSphere
  • Andere (siehe Kommentare auf der Ergebnisseite)

Google+

Ausgabe /2018

Microsite