FreeNX Server

Aus Gentoo Linux Wiki

Wechseln zu: Navigation, Suche
Dieser Artikel ist Teil der HOWTO Sammlung.
Installationsmethoden LiveCDs Kernel & Hardware Laptops & Notebooks Portage System Netzwerke & Services X Software Anderes alphabetischer HOWTO Index


Inhaltsverzeichnis

[Bearbeiten] Einleitung

Mit FreeNX kann man über schmalbandige Internetverbindungen (schon ab 40 KBit/s) auf eine X11-Sitzung zugreifen. Es basiert auf der Software von NoMachine.

[Bearbeiten] Installation

[Bearbeiten] Server installieren

Auf dem Server muss zunächst nxserver-freenx installiert werden. Dazu führt man folgenden Befehl aus:

emerge nxserver-freenx

Nach der Installation muß ggf. noch nxsetup ausgeführt werden, um z.B. den lokalen nx-Benutzer anzulegen:

nxsetup --install --setup-nomachine-key --clean --purge

Der Server muss nicht manuell oder etwa von Xinetd gestartet werden. Dies erledigt der Client beim einloggen via SSH selbst. Er startet den Server und dann den ausgewählten Window Manager.

[Bearbeiten] PaX / GrSecurity / Hardened Kernel

Benutzer der Kernel Sicherheitserweiterung PaX (Bestandteil von GrSecurity, zu finden u.a. im Gentoo Hardened Kernel) werden möglicherweise feststellen, das sich /usr/NX/bin/nxagent aus dem nxserver-freenx Paket nicht ausführen lässt. Dies äußert sich so, das vom NX Client keine Verbindung zum Server aufgebaut werden kann. Die Ursache dieses Problemes ist, dass eine Bibliothek (/usr/NX/lib/libXcompext.so.1) sog. Text Relocations beinhaltet und dass solche Bibliotheken nicht geladen werden dürfen, sofern in der Kernelkonfiguration

Non-executable page ->
 [*]   Disallow ELF text relocations

also CONFIG_PAX_NOELFRELOCS=y gesetzt ist.

Um trotzdem nxagent (und auch xmessage, welches benötigt wird um den Abmeldedialog anzuzeigen) ausführen zu können, ist es notwendig, das PaX Feature "MPROTECT" für diese Programme zu deaktivieren. Durch folgenden Aufruf wird dies erreicht:

paxctl -m /usr/NX/bin/nxagent /usr/bin/xmessage

Desweiteren muss bei nxclient.bin das mprotect Feature deaktiviert sein. Die nxclient.bin Datei hat allerdings nicht die für paxctl notwendigen Header, so dass man hierbei mit chpax arbeiten muss:

chpax -m /usr/NX/bin/nxclient.bin

[Bearbeiten] Client installieren

Auf dem Client muss man nxclient installieren. Den Client installiert man mittels:

emerge nxclient/* Client installieren */ 

Soll der Server auch gleichzeitig als Client betrieben werden können, so muss man dort nicht nxclient installieren, sondern folgendes vor der Installation des Servers tun:

echo "net-misc/nxserver-freenx nxclient" >> /etc/portage/package.use
emerge nxserver-freenx

Dies installiert den Client und anschließend den Server.

[Bearbeiten] Server konfigurieren

Auf dem Server muss man noch die Benutzer hinzufügen, die über FreeNX auf diesen zugreifen können sollen. Diese Benutzernamen müssen den "richtigen" Benutzernamen auf dem System entsprechen.

/usr/NX/bin/nxserver --adduser <Benutzername>

Für diese Benutzer sollte man noch ein Passwort setzen:

/usr/NX/bin/nxserver --passwd <Benutzername>

[Bearbeiten] Verwendung des Clients

Den NXClient startet man nun mittels:

nxclient


[Bearbeiten] Client unter Windows oder Mac OS X

Clients für andere Betriebssysteme kann man unter nomachine.com herunterladen. Bei der Einrichtung des Clients hilft ein Assistent, dies sollte also kein Problem sein, man sollte lediglich darauf achten, dass im Sitzungsnamen keine Leerzeichen sind, sonst kann unter anderem folgender Fehler auftreten:

Parse error in remote options string 'NX>'
'Persönliche Werkzeuge
Andere Sprachen