Diese Seite wird aktuell von Newur überarbeitet. Bitte hier keine Änderungen mehr vornehmen, sondern in Baustelle/FreeNX!
Dieser Anleitung fehlen noch einige Informationen. Wenn Du etwas verbessern kannst, dann editiere den Beitrag, um die Qualität des Wikis noch weiter zu verbessern.
Anmerkung: Formale Mängel und zu wenig Erklärungen, "Clientsetup" im unteren benutzt irgendwelche Hoary-Quellen..., Getestet mit welchen Ubuntu-Versionen?
7.04b: NoMachine installation ohne Probleme, Hinweise zu 64it sehr rudimentär
7.10 Bitte eine Beschreibung zur Einrichtung des Schlüssels hinzufügen.
8.04 : NoMachine (Variante 1) Installation ohne Probleme, Variante 2 (bis auf Warnings bei apt-get install wegen Fremdquelle; Hinweis?) OK
Generell kann man sagen, dass freeNX
so etwas ähnliches wie VNC ist, nur um einiges schneller! In etwa so, wie die Remotedesktopverbindung von Windows oder Citrix Presentation Server. Außerdem verursacht FreeNX auf dem Server wesentlich weniger CPU-Last als VNC.
Mit Hilfe des NX Servers, lässt sich der komplette Desktop oder auch einzelne Programme über ein privates Netzwerk oder über das Internet auf einen weiteren Rechner transportieren. Dabei werden die zu sendenden Daten mit verschiedenen Kompressionstechniken auf ein Minimum reduziert. Zusätzlich werden die zu sendenden Daten in kleine Pakete aufgeteilt und Client- und Serverseitig gecached. Dadurch wird verhindert, dass bereits übertragene Pakete noch einmal gesendet werden und eine zusätzliche Beanspruchung des Übertragungsmediums reduziert wird.
Zur Installation gibt es zwei Möglichkeiten, welche beide Vor- und Nachteile haben:
Bei Variante 1 werden die Originaldateien von NoMachine verwendet, die Installation ist sehr einfach und der Server läuft auch mit allen neueren Clienten zusammen. Der Nachteil ist, dass maximal nur drei Benutzer gleichzeitig auf der Servermachine per NX arbeiten können.
Bei Variante 2 können mehr als drei Benutzer per NX arbeiten, neue Clienten machen aber Probleme bzw. muss man eine Datei patchen, damit diese funktionieren. Außerdem geht der Resume einer Session nicht immer bzw. wird das Fenster ohne Rahmen dargestellt.
Es sollte zur Zeit die Variante 1 bevorzugt werden, da dies wesentlich einfacher ist als Variante 2, welche sich nur bei größeren Server lohnt.
Es wird der SSH-Server benötigt, welcher standardmäßig nicht in Ubuntu installiert ist. Deshalb muss das Paket
openssh-server
zuerst noch installiert [1] werden.
Fremdpakete können das System gefährden.
Von der NoMachine Download-Seite
kann man die fertige .deb-Pakete herunteladen.
Möchte man nur den Client benutzten, benötigt man nur das erste Paket. Alle drei Pakete sind für den Serverbetrieb notwendig, diese müssen in der angegebenen Reihenfolge installiert [1] werden:
NX Client for Linux
NX Node for Linux
NX Free Edition for Linux
Nach der Installation ist der Rechner direkt von extern erreichbar. Unter Windows installiert man den "NX Client for Windows", anschließend kann man sich dann direkt auf dem Ubuntu Rechner "einwählen".
Nach der Installation gibt es im GNOME-Menü einen Eintrag unter "Anwendungen -> Internet -> NX Client for Linux".
Die oben bereits erwähnten Pakete müssen mit --force-architecture installieren werden. Zusätzlich ist eine 32-Bit Library nötig. Wie das geht, steht hier: http://www.nomachine.com/ar/view.php?ar_id=AR07D00407
Weiters muss man noch etwas aus den 32-Bit Paketen installieren: Mittels Quick&Dirty-Vorgangsweise holen wir uns gleich mehr als nötig:
sudo apt-get install ia32*
Dann muss man dem nxserver noch ein wenig bei ssh helfen. (Dieser Tipp stammt von hier: http://paperdrip.net/blog/?p=16).
Die Folgende Zeile in die /etc/ssh/sshd_config einfügen:
AuthorizedKeysFile /usr/NX/home/nx/.ssh/authorized_keys2
(Die bestehende AuthorizedKeysFile - Zeile auskommentieren)
und ssh restarten:
sudo /etc/init.d/ssh restart
Danach sollte der NX-Server laufen können:
sudo /usr/NX/bin/nxserver --restart
Machen Quellen geben an, dass in der /etc/hosts eine Zeile um das Wort 'unix' ergänzt werden muss (Das scheint jedoch nicht unbedingt nötig zu sein):
127.0.0.1 localhost unix
Diese hier dargestellte Vorgangsweise für NX auf Ubuntu 7 - 64 Bit ist nicht ausgereift und macht das System unsauber. Speziell die Änderung in der sshd_conf könnte problematisch sein. Das hier ist eine temporäre Lösung und sollte dringend professionell bearbeitet werden.
Zusätzliche Fremdquellen können das System gefährden.
Für die Installation ist eine zusätzliche Paketquelle erforderlich. Je nach Distribution muss man folgende Paketquellen zur Paketverwaltung hinzufügen [2]:
Unter Ubuntu Hardy Heron 8.04 kann man folgende Quelle in seine /etc/apt/sources.list einbinden:
deb http://ppa.launchpad.net/freenx-team/ubuntu hardy main deb-src http://ppa.launchpad.net/freenx-team/ubuntu hardy main
Dann installiert man folgendes Paket:
freenx
Es sind hier an NX keine Konfigurationen nötig um die Funktion zu gewährleisten. Einloggen funktioniert sofort mit jedem User des Systems. Möchte man trotzdem spezifische Konfigurationen vornehmen kann man dies natürlich tun. Hierfür ist folgende Datei zuständig: /etc/nxserver/node.conf
Die Datei ist selbsterklärend und wird hier nicht weiter erläutert. Wer weiterhin Dateien in /usr/NX sucht wird vergeblich danach suchen. FreeNX wurde an Ubuntu angepasst, und die Dateien wurden auch dem entsprechend verteilt.
Ein GPG Schlüssel ist hier nicht erforderlich. In dieser neuen Version von FreeNX sind bereits sämtlich Bugfixes enthalten. Erneuerungen wie NXVNC usw. sind hier auch bereits enthalten. Genauere Informationen hierfür, und Apt-Quellen für andere Ubuntu-Versionen findet man auf der Projektseite von Launchpad.Launchpad FreeNX 
127.0.0.1 localhost unix
# NXServer deb http://mirror.ubuntulinux.nl dapper-seveas freenx
Anschließend ist es nötig, den GPG-Schlüssel der neuen Paketquelle dem lokalen Schlüsselbund hinzuzufügen. Dazu einfach folgende Befehle in einem offenen Terminal [3] ausführen:
gpg --keyserver subkeys.pgp.net --recv-keys 1135D466 gpg --export --armor 1135D466 | sudo apt-key add -
Jetzt können folgende neue Pakete problemlos installiert werden [1]:
freenx
nxlibs
nxagent
Desweiteren wird ein SSH-Server auf dem Server-Rechner benötigt. Dieser muss ebenfalls nachinstalliert werden. Mehr Informationen dazu findet man unter SSH.
Unter Feisty ist die Installation sehr einfach. Man fügt folgende Paketquelle hinzu:
# FreeNX server/client deb http://mirror.ubuntulinux.nl/ feisty-seveas freenx
Den GPG-Schlüssel der neuen Paketquelle fügt man in einem offenen Terminal [3] so hinzu
gpg --keyserver subkeys.pgp.net --recv-keys 1135D466 gpg --export --armor 1135D466 | sudo apt-key add -
und aktualisiert die Paketliste mit dem Befehl
sudo apt-get update
Nun installiert man den Server auf der Maschine, die man fernsteuern will (der SSH-Server wird dabei automatisch mitinstalliert):
sudo apt-get install freenx-server
Man kann nun gleich loslegen und sich mit dem passenden Client von anderen Maschinen aus auf diesen Server verbinden, denn weitere Schritte sind nicht notwendig. Es müssen keine Schlüssel eingerichtet werden und es ist auch keine Konfiguration des NX-Servers oder SSH-Servers notwendig. Im Menü findet man zum Server den NX Session Administrator, der die aktuellen Verbindungen anzeigt.
Unter Gutsy Gibbon fügt man folgende Quelle hinzu:
# FreeNX server/client deb http://datakeylive.com/ubuntu gutsy main
Einen brauchbaren GPG-Schlüssel gibt es hier leider nicht. Die Paketliste wird zuerst aktualisiert.
sudo apt-get update
Die Installation erfolgt dann analog zu Feisty Fawn.
sudo apt-get install freenx-server
Weil der GPG-Schlüssel fehlt, erfolgt eine Fehlermeldung.
WARNUNG: Die folgenden Pakete können nicht authentifiziert werden! freenx Diese Pakete ohne Überprüfung installieren [j/N]?
Sie muss mit einem J bestätigt werden, damit das Paket installiert wird.
Wenn die Installation beendet ist, kann man sich von einem anderen Computer mit Hilfe eines NX-Clients anmelden. Ein Einrichten des Servers und der Schlüssel ist nicht nötig.
Nach erfolgreicher Installation erscheint am Bildschirm eine Auswahl, welche Keys verwendet werden sollen. Als erstes sollte man sich klar werden, wie das Konzept hinter dem NX Verbindungsaufbau aussieht. Als erstes logt sich der Benutzer nx per SSH auf dem Server ein. Allerdings erhält der Benutzer keine Shell, sondern es wird der nxserver gestartet.
Es können ohne Probleme die NoMachine-Keys verwendet werden, das stellt absolut kein Sicherheitsrisiko dar. Unter SSL
bekommt man weitere Informationen darüber, warum das Verwenden der NoMachine-Keys kein Problem sein sollte. Wie man die Keys ändert, wird auf der NoMachine Webseite
gut erklärt.
Für alle, die trotzdem noch mehr Sicherheit wollen, können mit Custom Keys eigene Schlüssel generieren. Diese müssen dann später auf die Clients verteilt werden. Dazu ist es nötig, die Datei /var/lib/nxserver/home/.ssh/client.id_dsa.key des Servers nach /usr/NX/share/ der Client-Rechner zu kopieren und die Zugriffsrechte zu setzen [5]:
sudo chmod 0664 /usr/NX/share/client.id_dsa.key
Um die Serverkonfiguration zu starten, folgenden Befehl in einem Terminal [3] ausführen:
sudo nxsetup
Es erscheint am Bildschirm die Frage, ob die Konfiguration gestartet werden soll. dazu folgende Frage mit N beantworten:
Do you want to abort now? [y/N]
Anschließend kann noch einmal gewählt werden, welche Keys verwendet werden sollen. Werden die Nomachine-Keys verwendet, kann diese Frage auch mit N beantwortet werden.
Do you want to use your own custom KeyPair? [y/N]
Nach diesen Konfigurationsschritten findet ein Verbindungstest statt und es wird eine SSH-Verbindung zum lokalen Rechner aufgebaut. Die Frage
Are you sure you want to continue connecting (yes/no)? yes
kann mit "yes" bestätigt werden. Wenn alles okay ist, erscheint folgende Ausgabe am Bildschirm:
HELLO NXSERVER - Version 1.4.0-45-SVN OS (GPL) NX> 105 quit Quit <--- done Ok, nxserver is ready. PAM authentication enabled: All users will be able to login with their normal passwords. PAM authentication will be done through SSH. Please ensure that SSHD on localhost accepts password authentication. You can change this behaviour in the /etc/nxserver/node.conf file. Have Fun!
Eine Faustregel beim Einrichten von FreeNX ist: Kann man sich über SSH anmelden, dann sollte es auch über NX klappen. Deshalb legt man sich geschickterweise einen SSH-Client (z.B. PuTTY
) zu und versucht sich darüber zu autorisieren. Die notwendigen Vorkehrungen in der /etc/ssh/sshd_config sind ja oben schon getroffen worden.
Eventuell wichtig für alle, die "--setup-nomachine-key" verwenden: In der Datei /etc/ssh/sshd_config ist die Option "RSAAuthentication" auf "no" und "PubkeyAuthantication" auf "yes" zu setzen.
Bei manchen freeNX Installationen ist noch folgende Angabe in der /etc/nxserver/node.conf zu korrigieren: "COMMAND_XAUTH=xauth".
Wenn man Xubuntu als Desktop nutzt, so muss man den FreeNXClient folgendermaßen konfigurieren: Im Tab "General" ist unter Desktop "Unix" zu wählen, aber dann "Custom" wählen und unter "Settings" bei "Run the following command:" folgendes eingeben: startxfce4. Manchmal kann es nötig sein unter Options "New virtual desktop" zu wählen. Danach sollte man auf den Server kommen.
Kann keine Verbindung zum Server aufgebaut werden, sollte überprüft werden ob auf dem Server der SSH-Dienst gestartet wurde. Dazu folgenden Befehl im Terminal [3] ausführen:
ssh localhost
Erscheint etwas in der Art wie
The authenticity of host 'localhost (127.0.0.1)' can't be established. RSA key fingerprint is 66:58:88:c8:c8:ab:2d:67:14:5a:66:89:33:41:b6:71. Are you sure you want to continue connecting (yes/no)? yes username@localhost's password:
so ist der SSH Server gestartet. Falls nicht, sollte man überprüfen, warum der Dienst nicht korrekt läuft. Mehr dazu unter SSH.
Klickt man auf den "Beenden"-Button im Panel, dann friert oft die NX-Session ein und man kann nichts mehr machen. Auch das Beenden funktioniert (unter Windows) nur noch durch gewaltsames Beenden des NX-Prozesses. Doch es gibt dazu zwei Lösungen:
1. Per SSH-Session (z.B. mit PUTTY) einloggen und den Dienst GDM neu starten:
sudo /etc/init.d/gdm restart
Danach ist die NX Session wieder nutzbar.
2. Mit dem "NX Session Administrator" die Verbindung trennen und wieder neu verbinden.
Normalerweise werden Tastensequenz wie ALT-TAB (Taskmanager) innerhalb einer NX Session nicht an das Remote-Betriebssystem gesendet, sondern an das Lokale Betriebssystem. Dieses verhalten kann man mit Ctrl + Alt + K umschalten.
So lässt die z.B. der Taskmanager des Remote-Betriebssystem benutzten.
Weitere speziele NX Session Tastenkürzel stehen in der FAQ
von NoMachine.
Zusätzliche Fremdquellen können das System gefährden.
Um den nxclient zu installieren, muss neben der "universe"-Sektion folgende Paketquelle freigeschaltet werden [2]:
# FreeNX deb http://free.linux.hp.com/~brett/seveas/freenx dapper-seveas freenx
Die Paketquelle ist identisch mit der Quelle für den NX-Server. Sollte der Originalserver nicht funktionieren, so findet man auf http://seveas.ubuntulinux.nl
eine Liste von Mirrors. Anschließend ist es nötig, den GPG-Schlüssel der neuen Paketquelle dem lokalen Schlüsselbund hinzuzufügen. Dazu einfach folgende Befehle in einem offenen Terminal [3] ausführen:
gpg --keyserver subkeys.pgp.net --recv-keys 1135D466 gpg --export --armor 1135D466 | sudo apt-key add -
Jetzt können folgende neue Pakete problemlos installiert werden [1]:
nxclient
Nach der Installation kann man den Client über
"Anwendungen -> Zubehör -> NX Client for Linux"
starten.
Man fügt, falls dies wegen der Installation des Servers freenx aus der gleichen Quelle nicht bereits geschehen ist, folgende Paketquelle hinzu
# FreeNX server/client deb http://mirror.ubuntulinux.nl/ feisty-seveas freenx
und holt den GPG-Schlüssel der neuen Paketquelle in einem offenen Terminal [3]
wget http://mirror.ubuntulinux.nl/seveas.gpg -O- | sudo apt-key add -
und aktualisiert die Paketliste mit dem Befehl
sudo apt-get update
Den Client installiert man dann so:
sudo apt-get install nxclient
Nun findet man im Menü den NX Connection Wizard und den NX Client. Auch hier kann man sofort loslegen und sich über den NX Connection Wizard eine Verbindung definieren, die man auch gleich benutzen kann.
Die aktuelle Version des Clients (im Moment "nxclient-3.2.0-13.exe") kann von nomachine.com
heruntergeladen werden.
Für die sichere Kommunikation unter Benutzung von Schlüssel gilt:
Bei der Installation des Clients wird standardmäsig die Datei server.id_dsa.key angelegt.
Den eigenen Key z.B. auf einem USB-Stick ablegen und unter Windows nach C:\Programme\NX Client for Windows\share\keys\client.id_dsa.key kopieren.
Dann den nxclient starten und mit Hilfe des Wizards die Schritte für eine nx-Session durchführen. Anschließend die nx-Session aufrufen und unter "General/Allgemein" auf den Button "Key" drücken und den eigenen Key importieren.
Diese Revision wurde am 19. Februar 2009 um 23:12 Uhr
von BigMc erstellt.
Dieser Seite wurden folgende Begriffe zugeordnet:
internet, remotedesktop, vnc, Netzwerk, server
2004 – 2010 ubuntuusers.de • Einige Rechte vorbehalten