AA_seehund_123rf-6977400_SylvieBouchard.jpg

© Sylvie Bouchard, 123rf.com

Der letzte Heuler

X2go – Terminalserver auch für den Hausgebrauch

01.06.2011
Ob auf Geschäftsreise, in der Konferenz oder zu Besuch bei Freunden: Mit X2go haben Sie Ihren Desktop der Wahl immer zur Hand – über eine sichere und effiziente Verbindung.

Wer eine Arbeitsfläche via Internet übertragen will, liegt mit dem GPL-Projekt X2go [1] fast immer richtig: Es bringt Linux- und Windows-Desktops schnell, unkompliziert und sicher auf entfernte Rechner, erlaubt den transparenten Transfer von Sound und Dateien in der Session, ermöglicht das Drucken auf lokale Drucker und unterstützt KDE, Gnome, LXDE und beliebige Einzelprogramme im nahtlosen Fenstermodus.

Alle übertragenen Daten verschlüsselt das Tool und sorgt mittels Kompression und flexibler Caches auf beiden Seiten für flüssiges Arbeiten auch bei geringer Bandbreite oder hoher Latenz, zum Beispiel über UMTS-Verbindungen. Als Clients stehen dem Anwender Varianten für Windows, Linux, Mac und mobile Geräte der Maemo-Baureihen (Nokia N700/800/900) bereit. Die wachsende Community arbeitet zudem an weiteren Alternativen.

Die Namen der Software-Versionen korrespondieren dabei mit dem Maskottchen für das Terminalserver-Projektes, der Robbe: Die aktuelle Version 3.1 der Software trägt den Namen "Baikal", die instabile Variante auf den Namen "Heuler". Dabei spielt "Baikal" auf eine Besonderheit an, nämlich die Baikal-Robbe, die als einzige ihrer Art ausschließlich im Süßwasser des gleichnamigen Sees lebt.

Das Projekt erhält eine zusätzliche Bedeutung durch die Tatsache, dass das italienische Unternehmen Nomachine die Lizenz für die X2go-Alternative NX mit der kommenden Version 4.0 zu einer Closed-Source-Lizenz ändert. Das löste in der Community viel Unmut aus, und es ist derzeit noch unklar, ob es weiterhin eine kostenlose NX-Version gibt.

Zwar stellt Nomachine den Quellcode gegen eine Gebühr bereit, aber Modifikationen erlaubt das neue Lizenzwerk nicht mehr. Möchten Sie Ihre Daten einem Produkt anvertrauen, dessen Arbeitsweise Sie bei Bedarf bis ins kleinste Detail durchschauen, fahren Sie mit X2go besser.

Stand der Dinge

Obwohl X2go ursprünglich auf dem proprietären NX-Protokoll [2] von Nomachine basierte und lange dessen freie Bibliotheken verwendete, erweist es sich heute als waschechtes Open-Source-Projekt, das in nahezu vorbildlicher Weise freie Technologien verwendet, um diverse Dienste bereit zu stellen (siehe Kasten "X2go: Komponenten"). Für den Einsatz in einer professionellen Umgebung unterstützt die Software außerdem LDAP, Smartcards, Tokens sowie Thin-Client-Management mit PXE-Boot.

X2go: Komponenten

  • Netzwerkprotokoll des X-Windows Systems (X11)
  • NX-Bibliotheken (überarbeitet und teilweise komplett neu erstellt)
  • Secure Shell (SSH)
  • Filesystem in Userspace (Fuse) mit der SSHFS-Erweiterung
  • Drucksystem Cups
  • Pulseaudio (netzwerktransparenter Audio-Dienst)

In der derzeit schnell wachsenden Community tobten in den letzten Monaten einige Diskussionen über die Ziele des Projekts. X2go war lange Zeit das Steckenpferd zweier Entwickler – die Absprachen erfolgten auf Zuruf, die klassischen Mittel zur Kommunikation erschienen überflüssig. In den letzten Jahren erhielt das Projekt jedoch erstaunlichen Zulauf: So engagieren sich seit Anfang 2011 mehrere Universitäten und bringen viele neue Ideen und Patches ein. Die Uni Erlangen treibt quasi im Alleingang die Arbeit an der Thin-Client-Architektur voran – weil sie diese im lokalen Uni-Netz einsetzt. Damit entstanden aber auch Reibereien über die Schwerpunkte der Arbeit.

Nichtsdestotrotz hat der wachsende Zulauf viele positive Nebeneffekte: Ein neues Git-Repository erlaubt, den Code zentral zu verwalten, die Mailingliste ist auf Berlios umgezogen [3], neben Debian-Paketen stehen seit kurzem auch RPM- und spezielle Ubuntu-Pakete bereit (siehe Kasten "Probleme unter Ubuntu"). Wer Hilfe zu einzelnen Komponenten braucht, ist definitiv auf der Mailingliste richtig aufgehoben.

Probleme unter Ubuntu

Unter manchen Versionen von Ubuntu sowie dessen Derivaten berichteten Anwender von Problemen beim Verbindungsaufbau mit einem Server auf dem lokalen Rechner. Dies liegt laut den Entwicklern an fehlerhaften Paketen. Als Anwender haben Sie die Möglichkeit, auf ein PPA zurückzugreifen, dass die Uni Erlangen betreibt und das Sie unter der folgenden Adresse finden:

https://launchpad.net/~siretart/+archive/x2go

Dieses PPA eignet sich auch für eine normale Installation der Software mit allen Komponenten.

Als Clients kommen Webbrowser, native Software oder eine Thin-Client-Architektur infrage. Bei letzterer sorgt der Server dafür, dass Client-Rechner übers Netz die X2go-Umgebung booten. Übers HTTPS, SSH oder das NX-Protokoll nehmen die Clients Kontakt zum Server auf (Abbildung 1), der daraufhin den gewünschten Desktop ausgibt. Diese Vielseitigkeit ermöglicht den Einsatz von X2go auch in komplexen Unternehmens- oder Schulungsszenarien. Daneben zeigt sich X2go in sich flexibel: Abbildung 2 zeigt eine verschachtelte Sitzung.

Abbildung 1: Die X2go-Architektur bietet für professionelle Anwender viele interessante Komponenten, bis hin zur redundanten Anbindung für sichere Server.
Abbildung 2: X2go erlaubt verschachtelte Sitzungen: Hier läuft KDE 3.5 auf einem entfernten Server. Der Benutzer hat je eine KDE 4.6 (links oben) und eine LXDE-Sitzung (rechts unten) auf dritten Rechnern geöffnet.

Nativer Client

Einer der nativen Clients präsentiert sich als schlankes Qt-Programm (Abbildung 3) mit einem zweigeteilten Interface. Wer nicht auf Qt setzen will, holt sich entweder den CLI-Client für die Kommandozeile oder den GTK-Client aus den gleichnamigen Software-Paketen. Die Clients für Windows, Mac und Maemo finden Sie auf der X2go-Webseite. Der Kasten "Installation" hilft beim Setup der Software.

Abbildung 3: Seit der 2009 erschienenen Version 3 hat X2go einen intuitiven Client, in dem Sie viele Funktionen per Mausklick erreichen.

Installation

Unter Debian 5.0 "Lenny" haben Sie X2go schnell installiert. Dazu legen Sie als User root eine Datei x2go.list mit dem Inhalt aus Listing 1 im Verzeichnis /etc/apt/sources.list.d/ an. Seit das Projekt im Jahr 2010 auf den Radarschirm von OpenSuse geriet, gibt es auch RPM-Pakete fürs Chamäleon.

In den Debian-Repositories, die im Test fehlerfrei ab Ubuntu 8.04 und auch mit "Natty Narwhal" liefen, finden sich zahlreiche Archive, die für unterschiedliche Einsatzzwecken dienen (siehe Tabelle "Paketvarianten"). Seit April 2011 existiert bei DEB-basierten Systemen nur noch ein Paket für den Server, die Aufteilung in x2goserver-home oder x2goserver-one entfällt.

Die Installation erledigen Sie am schnellsten auf der Kommandozeile. Um Server und Client auf dem lokalen System zu installieren und gleich für die richtige Konfiguration der beteiligten Dienste zu sorgen, genügt der Befehl:

$ sudo aptitude install x2goserver-home x2goclient

Hakt hier etwas, finden Sie in vielen Fällen im Wiki und auf der Mailing-Liste Tipps zur Fehlersuche. Prüfen Sie jedoch vor der Installation die Funktionsfähigkeit der beteiligten Dienste (siehe Kasten "X2go: Komponenten"). In der Regel konfiguriert das X2go-Paket diese korrekt.

Wichtig ist zudem die richtige Gruppenmitgliedschaft: Normalerweise sollten Benutzer auf Server und Client mindestens in den Gruppen fuse, und x2gousers enthalten sein. Wer Druck- und Datentransfer nicht benötigt, braucht nicht Mitglied in fuse zu sein.

Listing 1

deb http://x2go.obviously-nice.de/deb/ lenny main

Paketvarianten

Paket Funktion
x2goserver allein stehender Terminalserver mit lokaler Authentifizierung
x2goclient, x2goclient-gtk, x2goclient-cli QT-, GTK- und Befehlszeilenclient
x2gosmartcardrules fortgeschrittene Features für Profis, wie zum Beispiel Smartcard-Authentifizierung
x2goprint Drucken übers Netz
x2goldaptools zentrale LDAP-Benutzerverwaltung
x2gogroupadministration, x2gouseradministration, x2gohostadministration Administrationstools, die sich nahtlos ins KDE-Kontrollzentrum einklinken
x2gothinclient älteres Modul, das PXE-Boot mit echten Thin Clients ermöglicht
x2gospyglass sammelt Screenshots aller angeschlossenen Terminals und zeigt sie als Thumbnails in einer Übersicht (ideal zum Beispiel für Schulklassen)

Die Oberfläche des Clients fällt weitgehend selbsterklärend aus: Im Bereich rechts finden Sie die konfigurierten Sitzungen, im blauen Feld links melden Sie sich mit Ihrem Benutzernamen und Ihrem Passwort beim angewählten Server an. Eine neue Sitzung legen Sie entweder übers Menü Sitzung | Neue Sitzung oder das entsprechende Icon in der Werkzeugleiste.

Im folgenden Popup für die Konfiguration geben Sie dann einen Sitzungsnamen und als Host localhost an. Außerdem wählen Sie eine Sitzungsart (KDE, Gnome, LXDE, Windows). Wie bei Nomachines NX haben Sie auch bei X2go die Möglichkeit, dedizierte Programme zu starten oder die Verbindung zu einem Windows-Terminalserver durchzureichen. Setzen Sie eine andere Desktop-Oberfläche ein, gilt es zu recherchieren, wie Sie das entsprechende Programm explizit aufrufen.

Abbildung 4: Der Setup-Dialog stellt bekannte Desktops zur Auswahl.

Normalerweise genügen die Angabe eines Sitzungsnamens, Hosts und Benutzers, gefolgt vom Klick auf Ok. Damit haben Sie die neue Sitzung bereits konfiguriert. Sie aktivieren Sie per Mausklick auf den entsprechenden Eintrag im rechten Bereich – oder konfigurieren per Dropdown-Menüs, die sich beim Überfahren mit der Maus aktivieren, zum Beispiel die gewünschte Fenstergröße.

Der kleine, nach unten zeigende Pfeil um unteren rechten Rand des weißen Sitzungsbereichs führt zur Konfiguration und einem netten Feature: dem Erzeugen eines Desktopsymbols für die Sitzung. Das funktioniert über die Parameter der Software. Listing 2 zeigt eine beispielhafte .desktop-Datei.

Listing 2

#!/usr/bin/env xdg-open
[Desktop Entry]
Exec=x2goclient --hide --sessionid=20101124121455066
Icon=/usr/share/x2goclient/icons/x2gosession.png
Name=Localhost
StartupNotify=true
Terminal=false
Type=Application
X-KDE-SubstituteUID=false

Die Session-Nummer und weitere Daten des Clients finden Sie im Verzeichnis ~/.x2goclient, vor allem die Parameter printing, sessions und settings verdienen einen Blick – hier landen alle Einstellungen des Clients; die Details ändern Sie bei Bedarf mit wenig Aufwand. Welche Parameter es noch gibt, verrät der Befehl x2goclient --help in einem Terminal.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • Terminalserver X2go 3.0 erschienen
    Die neue Version mit dem Release-Namen Uthörn wurde hauptsächlich an Debian 5.0 angepasst. Druckaufträge komprimiert der neue Druckdienst vor dem Versand an den Client auf ca. 10% ihrer ursprünglichen Größe und mit Pulseaudio unterstützt der Terminalserver jetzt eine dritte Soundarchitektur.
  • Rechnerfreigabe mit NX 4
    Windows-Nutzer können ihren Desktop mit Hilfe der Funktion "Remote-Desktop" für den Zugriff über das Netzwerk freigeben, Linux-Anwender nutzen analog die Desktopfreigabe von KDE. Mit NoMachine steht eine leistungsfähige Alternative bereit, die einfach zu handhaben ist.
  • Googles NX-Client Neatx
    Internetriese Google steigt auch in das Terminalserver-Geschäft ein. Mit Neatx, einer eigenen, in Python geschriebenen Anpassung der FreeNX-Quellen steht seit kurzem ein eigener GPL-Server zur Verfügung.
  • Arbeit und Kosten mit dem Terminal-Server ThinLinc reduzieren
    ThinLinc präsentiert sich als leicht zu installierende und zu wartende Terminal-Server-Lösung, die keine Wünsche offen lässt.
  • Work@Home
    Im modernen Unternehmen arbeiten die Mitarbeiter auch schon mal von zu Hause aus. Für den Zugriff auf die Anwendungen auf dem Server sorgt die NX-Technologie.
Kommentare

Infos zur Publikation

LU 12/2014: ANONYM & SICHER

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

Nach Ubdates alles weg ...
Maria Hänel, 15.11.2014 17:23, 4 Antworten
Ich brauche dringen eure Hilfe . Ich habe am wochenende ein paar Ubdates durch mein Notebook von...
Brother Drucker MFC-7420
helmut berger, 11.11.2014 12:40, 1 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu 14.04-Nutzer...
Treiber für Drucker brother MFC-7420
helmut berger, 10.11.2014 16:05, 2 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu12.14-Nutzer u...
Can't find X includes.
Roland Welcker, 05.11.2014 14:39, 1 Antworten
Diese Meldung erhalte ich beim Versuch, kdar zu installieren. OpenSuse 12.3. Gruß an alle Linuxf...
DVDs über einen geeigneten DLNA-Server schauen
GoaSkin , 03.11.2014 17:19, 0 Antworten
Mein DVD-Player wird fast nie genutzt. Darum möchte ich ihn eigentlich gerne abbauen. Dennoch wür...