Contenu | Rechercher | Menus

Page en réécriture

FreeNX

FreeNX est une application client léger / serveur open source basée sur la technologie NX de NoMachine. Elle est capable de faire fonctionner des sessions graphiques X11 sur toute connexion à partir d'un modem 56 kbps1, soit malgré une faible bande passante et une latence importante. Le paquetage FreeNX contient une implémentation libre (GPL) de la composante nxserver.

NoMachine met maintenant gratuitement à disposition sur son site web un serveur (non libre) dont l'installation est très facile. Cependant le nombre d'utilisateurs pouvant se connecter via le serveur de NoMachine est limité à 2 ! Si vous souhaitez installer le client ou le serveur NoMachine reportez vous à la page: serveur NoMachine.

Seul la dernière version du serveur FreeNX des dépôts Launchpad fonctionne avec les dernières versions du client NX NoMachine (>=3.3.0-6). Dans le cas contraire le serveur NoMachine sera donc indispensable si vous souhaitez installer un client sous Windows Vista.

Introduction

Freenx est un serveur que vous installez sur votre ordinateur Ubuntu et qui vous permettra de vous y connecter à partir d'un autre ordinateur. Freenx surclasse les autres solutions du même type grâce à l'utilisation d'un protocole compressé propriétaire. La différence est particulièrement notable si la connexion passe par une liaison WiFi, ADSL ou même modem.

Le système est, à la base, développé et commercialisé par NoMachine. Mais ils ont mis les sources de leur serveur à disposition du public sous license GPL. Freenx est une réalisation de la communauté du logiciel libre qui utilise ces sources.

Pour l'illustration de la mise en œuvre de Freenx, nous utiliserons le client Windows.

Pour l'installation nous utilisons le terminal, même si certaines opérations pourraient se faire avec Synaptic. Pour ouvrir un terminal, lancez le programme Applications → Accessoires → Terminal.

Terminologie

Le serveur est l'ordinateur sur lequel vous souhaitez vous connecter. C'est l'ordinateur sur lequel le serveur FreeNX aura besoin d'être installé. Le nom du paquet Ubuntu qui fournit le serveur est "freenx".

Le client est l'ordinateur depuis lequel vous voulez pouvoir accéder au serveur. Le nom du paquet Ubuntu qui fournit le client est "nxclient"

Installation et configuration de SSH

La connexion à Freenx se fait via SSH, il faut donc installer le serveur SSH: ssh

Pour pouvoir se connecter à Freenx, il faut changer certains paramètres dans le fichier de configuration /etc/ssh/sshd_config.

Dans ce fichier vous devriez trouver une section « Authentification ». Modifiez cette section pour avoir ce qui suit :

# Authentication:
LoginGraceTime 120
PermitRootLogin no
StrictModes yes
 
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      %h/.ssh/authorized_keys

Normalement, vous devriez n'avoir qu'a dé-commenter la dernière ligne. Le « PermitRootLogin no » n'est pas indispensable. C'est juste une mesure de sécurité. Songez aussi à changer le numéro de port; le port par défaut est en effet la cible de constantes tentatives de pénétration automatisées. Si vous ne comprenez pas de quoi il s'agit, ne vous en souciez pas. Ce changement n'est pas critique pour utiliser Freenx ou pour la sécurité, étant donné la sécurité inhérente à ssh.

Il faut maintenant faire en sorte que SSH prenne en compte cette nouvelle configuration. Pour cela, tapez la commande suivante :

sudo /etc/init.d/ssh reload

À partir de Lucid Lynx (Ubuntu 10.04) la commande à utiliser pour relancer ssh est:

sudo service ssh restart

Installation de Freenx

Nous allons installer le serveur depuis le dépôt Launchpad d l'équipe FreeNX.

    sudo add-apt-repository ppa:freenx-team/ppa

Si add-apt-repository n'est pas installé, faites

    sudo apt-get install python-software-properties

Il n'y a pas de paquets pour Maverick mais les paquets pour Lucid semble fonctionner. Faites:

     sudo sed -i 's/maverick/lucid/g' /etc/apt/sources.list.d/freenx-team-ppa-maverick.list      

Enfin:

    sudo apt-get update
    sudo apt-get install freenx

Configuration de FreeNX

Attention cette partie sur la configuration n'est pas complète et est erronée.

FreeNX peut utiliser un de ces trois type de clés d'authentification: clés NoMachine, clés personnels ou sans clé, en mode utilisateur

Il utilise un de ces trois mode de connexion: SSH, SU, PASSDB: une base de donnée interne des utilisateurs

Une fois installé il faut paramétrer le serveur. Il existe plusieurs mode de configuration de FreeNX. Nous allons utiliser le plus sécurisé. Pour cela deux choses, d'une part modifier le port ssh par défaut, puis d'autre par créer votre propre certificat.

Modification du port SSH

Ouvrez le fichier de configuration de freenx:

    sudo nano /etc/nxserver/node.conf

trouvez la ligne suivante:

    # The port number where local 'sshd' is listening.
    #SSHD_PORT=22

décommentez et modifier le port ssh par celui souhaité

Attention le port doit être celui précisé au préalable dans le fichier de configuration de votre serveur ssh, qui se trouve dans /etc/ssh/sshd_config

Ce qui donnera par exemple:

    # The port number where local 'sshd' is listening.
    SSHD_PORT=8008

Une fois le port ssh par défaut modifié, il est préférable de créer votre propre certificat, que vous préciserez lorsque vous vous connecterez à partir d'un client quelconque.

Création d'un certificat personnel

Toujours dans un terminal:

    sudo dpkg-reconfigure freenx-server

Valider la première page, puis sur la seconde sélectionnez 'Create new custom keys'.

Une clé nommée client.id_dsa.key sera créée dans le répertoire /var/lib/nxserver/home/.ssh/, que vous vous empresserez de copier dans votre Home.

    sudo cp /var/lib/nxserver/home/.ssh/client.id_dsa.key ~/

Lors de la copie dans votre dossier personnel, la clé appartient au compte Root. Pour pouvoir la copier sur votre clé usb vous devez changer le propriétaire :

    cd #on se déplace dans le dossier personnel
    sudo chown $USER:$USER client.id_dsa.key #on change de propriétaire du fichier
    ls -alp /home/votrecompte/client.id_dsa.key #pour vérifier les nouveaux droits

Cette clé sera utilisé depuis le poste client, pensez à la copier sur un espace sécurisé sur le net ou sur une clé USB pour y avoir accès depuis un autre poste!

Votre serveur est désormais paramétré, rendez vous sur le site de No Machine afin de télécharger le client (http://www.nomachine.com/download.php).

Ajout d'utilisateurs

Avant de pouvoir se connecter à la machine à distance, les utilisateurs doivent être ajoutés; comme le système NX est basé sur SSH, on ne peut ajouter que les utilisateurs qui possèdent leur dossier dans /home.

Tapez :

sudo nxserver --adduser votre_login

ainsi qu'un mot de passe:

sudo nxserver --passwd <username>

Redémarrez ensuite le serveur NX:

sudo nxserver --restart

Problème de connexion (message de coupure réseau)

Le début de la connexion semble fonctionner mais au démarrage du serveur X, la connexion se ferme brutalement. Pour faire fonctionner la connexion, il faut ajouter dans le fichier de configuration de FreeNX (vers la fin) /etc/nxserver/node.conf la ligne suivante à mettre sur une seule ligne et sans espace après les virgules :

AGENT_EXTRA_OPTIONS_X="-fp
/usr/share/fonts/X11/misc/,
/usr/share/fonts/X11/75dpi/:unscaled,
/usr/share/fonts/X11/100dpi/:unscaled,
/usr/share/fonts/X11/Type1/,
/usr/share/fonts/X11/100dpi/,
/usr/share/fonts/X11/75dpi/"
/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType

Installation et configuration du client NoMachine

Rendez vous sur le site web de NoMachine et téléchargez le client qui vous convient. Dans notre cas se sera celui de Windows.

L'installation est une procédure classique pour tout utilisateur Windows. A la fin il vous propose de configurer une connexion à l'aide d'un assistant (Wizard).

FIXME : à développer

Dans la fenêtre configurer, il y a un bouton « Key ». Là vous verrez la clé privée du client. Remplacez la par celle qui se trouve sur votre ordinateur Ubuntu. Sauvez. Dans les onglets, vous trouverez une option pour activer le chiffrement SSL. C'est fortement conseillé. Il faut également activer la transmission du son. Ce n'est pas activé par défaut.

Choisissez un nom pour la session. Je vous suggère de créer un raccourci sur le bureau. Pensez à configurer le numéro de port et le nom de votre ordinateur Ubuntu comme il se doit.

Si vous rencontrez des problèmes avec la version 2.0 du client proposé par NoMachine, essayez la version 1.5 disponible ici.


Contributeurs : ChMeessen,Tuxmouraille

https://help.ubuntu.com/community/FreeNX



Le contenu de ce wiki est sous licence : CC BY-SA v3.0