Remote Control

X2Go - Flotter Fernzugriff auf Ihren Linux-Desktop

Das Open-Source-Projekt X2Go ist ein unkompliziertes Gespann aus Client und Server, um grafische Anwendungen auf dem Linux-Desktop in ansprechender Geschwindigkeit über das Netzwerk oder sogar über das Internet zu nutzen.

X2Go ist ein freier Terminal-Server für Linux, der mit wenig Aufwand ein Problem löst, das alle Anwender kennen dürften, die mehr als einen Arbeits-PC betreiben: Oft sitzen Sie ausgerechnet nicht vor dem PC, auf den Sie gerade Zugriff benötigen. Klar, ein Linux-System bringt eine mächtige Kommandozeile mit, die sich mittels SSH bestens zur Fernwartung eignet – zumindest für Shell-Spezialisten. Aber für den Fernzugriff auf Anwendungen und die Fernwartung mit grafischen Mitteln ist es zunächst eine Herausforderung, die passende Lösung zu finden. Das gilt umso mehr, wenn auch andere Betriebssysteme wie Windows als Clients zur Fernwartung dienen sollen.

Was X2Go anders macht

Auf dem Server startet X2Go eine eigene grafische Oberfläche.
Auf dem Server startet X2Go eine eigene grafische Oberfläche.

Für Linux-Systeme gibt es eine ganze Reihe von Lösungen zum Fernzugriff auf einen Desktop, und einige davon funktionieren auch für den Zugriff mit Windows auf ein Linux-System. Die bekannteste Lösung ist das Remote-Desktop-Protokoll VNC. Noch einfacher wird der Fernzugriff auf Desktops verschiedener Betriebssysteme mit dem Cloud-basierten Teamviewer, der sich durch seine unkomplizierte Installation auszeichnet, aber kein echtes Linux-Programm ist, sondern nur über Wine funktioniert. Zwischen Linux-Systemen gibt es sogar die besonders simple Lösung über X11-Forwarding, die außer einem laufenden SSH-Server kaum Vorbereitungen verlangt. Aber alle diese Wege sind nicht immer zufriedenstellend schnell, sicher oder skalierbar genug.

X2Go kombiniert die Vorteile verschiedener Ansätze. Es kümmert sich um eine sichere Verbindung und um eine flotte Darstellung auch bei niedrigen Übertragungsraten. Damit eignet sich X2Go nicht nur für das lokale Netzwerk, sondern auch für langsame Internet-Verbindungen. Mit seinem niedrigen Aufwand für Einrichtung und Verwaltung ist X2Go auch für Anwender interessant, die eine handliche Lösung ohne lange Einarbeitungszeit und Administrationsaufwand suchen.


Die Funktionsweise von X2Go

Die Entwickler des Open-Source-Projekts begannen vor zehn Jahren in Deutschland mit der Arbeit an X2Go, das in einer städtischen IT-Verwaltung als Ersatz für die „Sun Ray“-Clients von SUN Microsystems gedacht war. X2Go erfindet das Rad nicht neu, sondern nutzt bestehende Ansätze und verbreitete Linux-Komponenten: Als sicherer Übertragungsweg dient SSH, über das die anderen verwendeten Protokolle getunnelt werden. Ein X2Go-Server braucht also keinen anderen Dienst als SSH nach außen anzubieten. Der Benutzer braucht daher auf dem Server auch nur ein Linux-Benutzerkonto mit SSH-Zugang. Zur Anzeige und Steuerung des entfernten Desktops kommt eine ältere freie Version des effizienten Protokolls „NX“ der Firma Nomachine zum Einsatz. Die Server-Komponente hat ein komplettes XWindow-System im Gepäck. Bei der Verbindung des Clients startet der X2Go-Server eine neue grafische Oberfläche für den angemeldeten Benutzer. Diese läuft im Hintergrund, unabhängig vom grafischen Desktop und der Bildschirmauflösung auf dem Server. Auf Wunsch kann X2Go aber auch den tatsächlich laufenden Desktop des Servers auf den Client bringen.

Damit die Verbindung zum entfernten Desktop möglichst nahtlos wirkt, so als liefe dieser auf dem lokalen PC, bringt X2Go als Ergänzung noch eine gemeinsame Zwischenablage, Soundausgabe, eine Druckerverbindung für den lokalen Ausdruck und eine Ordnerfreigabe, um Dateien einfach vom Client zum Server zu bringen.

Auch diese Funktionen bauen auf bewährten vorhandenen Systemkomponenten auf: Den Sound schickt der Server per Pulseaudio zum Client, als Drucksystem dient Cups, und SSHFS erledigt die Ordnerfreigabe. Der Client bündelt die Einzeldienste in einer Anwendung, so dass Client-seitig nur ein einziges Programm nötig ist, das alle Voraussetzungen mitbringt.

Ist der X2Go-Server auf einem Linux-PC im Netzwerk installiert, dann reichen wie bei SSH der Benutzername und das Passwort.
Ist der X2Go-Server auf einem Linux-PC im Netzwerk installiert, dann reichen wie bei SSH der Benutzername und das Passwort.

Der Terminal-Server von X2Go

Einen Linux-Rechner machen Sie mit der Installation der X2Go-Server-Pakete zu einem Terminal-Server. Den X2Go-Server gibt es ausschließlich für Linux und hier für die verbreiteten Distributionen Debian, Ubuntu und Fedora in Form fertiger Pakete. Da der X2Go-Server aber eigene X11-Bibliotheken mitbringt, was den Paketrichtlinien einiger Distributionen wie Debian und Ubuntu zuwiderläuft, sind die Server-Pakete in externen Repositories der Entwickler verfügbar. Für Raspbian (Raspberry Pi) gibt es die Pakete nicht, und der Minirechner kann nur als zugreifender Client arbeiten.

(PC-Welt/ad)