Utilisateur:FreeImr
De Wiki de la communauté Mandriva.
Sommaire |
NX de NoMachine - FreeNX présentation.
Linux est réseau
Une des grandes forces de Linux est la possibilité de se connecter et d'utiliser un ordinateur à distance avec la même facilité que si on était dessus. En fait, il n'y a pas de différence entre local et distant pour Linux puisque ce système a été conçu dès le départ pour le réseau, ce qui explique qu'il ait plusieures longueurs d'avance en matière de connectivité ou de sécurité réseau sur des systèmes qui sont pourtant financés à coups de milliards.
Il est bon de savoir que ces petites tracasseries comme les login et les mots de passes, si elles nous protègent des insécurités du réseau, sont aussi dans certains cas la porte vers une facilité d'emploi inespérée.
Votre Mandriva intègre d'origine des mécanismes de liaison à distance, comme la prise de controle à distance (lien?) dans le Centre de Controle, nous allons voir maintenant un logiciel basé sur les même concepts que VNC mais beaucoup plus rapide, à tel point que même au travers d'une ligne internet on peut se loguer sur son ordinateur resté à la maison et ne souffrir que de petits ralentissements. (Votre serviteur a même fait de la retouche d'image avec Gimp sur son PC depuis un cybercafé).
NX est une implémentation accélérée et sécurisée au travers de ssh des concepts de sessions à distance de vnc. http://www.nomachine.com/products.php. http://www.nomachine.com/select-package.php?os=linux&id=1 est l'implémentation libre de NX pour Linux comprise dans votre Mandriva.
login, ssh, clefs, vnc, nx, explications
Si vous ne savez pas comment SSH ni les paires de clefs publiques/privées fonctionnent, vous allez faire les manipulations qui vont suivre en aveugle. Voici donc quelques explications succintes pour comprendre ce qui va se passer.
Quand vous vous connectez sur votre machine, vous entrez d'abord votre login et votre mot de passe lors de l'authentification. Le système "sachant" que c'est vous vous permet d'utiliser les fichier et les programmes auxquels vous avez droit.
Vous pouvez aussi vous loguer à distance grace à SSH qui va vous demander ces 2 identifiants, les passer à la machine et servir ensuite de conduit entre la machine sur laquelle vous êtes physiquement (le client) et la machine sur laquelle vous vous connectez grace à ssh (le serveur). Vous vous retrouvez alors en ligne de commande mais le flot de données entre vous et le serveur est chiffré donc protégé. SSH permet aussi de se loguer par reconnaissance avec une clef. On possède une paire de clefs, une privée qu'on garde, et une publique qu'on "donne" aux endroits où on veut se loguer. La clef contient en plus un mot de passe. Quand on se logue, ssh au lieu de vous demander vos mots de passe/login, vous demande seulement le mot de passe de la clef. Cela permet de n'avoir à se souvenir que d'un mot de passe pour des lieux différents.
VNC travaille différemment, il permet de se loguer sur le serveur (machine) distant, mais non pas avec un compte mais directement sur le serveur (service) vnc qui, une fois connecté, lance vers vous une session de l'environnement graphique. ( C'est sur vnc que l'utilitaire d'administration à distance rfbdrake du centre de controle est basé. ) Le serveur contient un mot de passe, une fois donné ce mot de passe, vous voyez apparaitre le bureau tel qu'il existe sur le serveur, et les applications que vous lancez s'affichent dans votre écran mais ont lieu sur la machine distante. Cela permet soit de travailler à distance, soit de profiter confortablement de la puissance d'un serveur puissant sur un ordinateur léger. (votre serviteur écrit ces ligne dans un ordinateur à 1000 MHz sans disque dur).
NX réunit ces mécanismes en un seul et accélère le coté graphique. Vous pouvez donc vous loguer avec votre compte utilisateur s'il existe sur le serveur ou avec un compte "Invité" comme avec vnc, et le tout à travers une connexion chifréé par ssh et protégée par une clef.
Installer FreeNX
On va trouver FreeNX dans le Gestionnaire de Logiciels dans la rubrique Accés Distants.
Sélectionnez le, appuyez sur appliquer, et c'est parti:
Il y a 2 autres éléments que vous pouvez rajouter à la sélection, nxdesktop, pour se loguer à distance sur des sessions rdesktop de windows et nxviewer, pour se loguer à distance sur des sessions vnc:
nxserver: coté serveur
Une fois le programme installé, vous avez une jolie fenêtre d'information dans laquelle une information vitale est écrite, l'emplacement de la clef d'identification privée des clients.
nxclient: coté client
Dialogue de configuration
On va maintenant lancer le client, c'est à dire l'utilitaire NX qui sert à se connecter au serveur et qui va lancer la session graphique.
Ici, choisissez un nom pour cette session (vous pouvez en avoir plusieurs vers des machines différentes). Donnez le nom de domaine ou l'adresse IP de la machine distante et réglez la vitesse en fonction de votre connexion.
Configurez votre session avec le type de système sur lequel vous allez vous loguer, en fonction du bureau installé que vous voulez utiliser, avec la taille de fenêtre que vous voulez avoir sur votre poste de travail. Si vous êtes en réseau local sûr, vous pouvez déconnecter le chiffrement de la connexion pour gagner en performances.
Vous pouvez en faire avoir un raccourci sur votre bureau et surtout lancer ou pas le menu avancé de configuration, dont nous allons avoir besoin. C'est la partie suivante.
= la clef ssh.
Le menu de configuration avancée sera disponible ensuite. C'est lui qui souvent va être le lieu de résolution de problème. En attendant, nous devons nous en servir parce pour l'instant notre système client ne peut pas s'identifier auprès du serveur (il ne peut pas montrer patte blanche). Il faut donc cliquer sur le bouton key qui va permettre de rentrer la clef privée dont on a eu vent dans les notes d'installation.
Vous voyez apparaitre alors la clef privée fournie avec votre installation, on va la remplacer par celle du serveur.
Voici sur le serveur la clef créée lors de l'installation. Je redonne son chemin intégral pour la 2008: /var/lib/nxserver/nxhome/.ssh/client.id_dsa.key .
Et voici maintenant ma clef modifiée sur le client. Il y a 2 manières d'arriver à ça, soit vous copier/coller le contenu de la clef serveur dans cette fenêtre, soit vous avez transféré d'une manière ou d'une autre la clef sur la machine client (par une clef usb par exemple) et vous avez cliqué sur import puis donner le chemin vers elle.
Performances
nxclient permet de modifier pas mal de facteurs influant sur les performances. Dans cet exemple, étant sur une machine sans disque dur et avec beaucoup de RAM, j'ai poussé au maximum l'usage de la mémoire et supprimer l'usage du cache disque. J'aurais pu aussi déconnecter l'usage de l'encryption du transfert de données pour gagner en performances.
nxclient: Connexion
Une fois configuré, le client se présente ainsi, on peut choisir son nom d'utilisateur sur la machine distante (le serveur), il faut alors donner son mot de passe sur la machine distante ou choisir une session si on a configuré plusieurs machines.
Echecs
En cas d'échec vous avez ce beau message. En cliquant sur détails vous en saurez un peu plus. Les journaux se trouvent sur le serveur dans /var/log/nxserver.log.
Les erreurs courantes: n'avoir pas rajouté l'utilisateur sur le serveur; avoir mal amené la clef privé dans le client; une erreur de mot de passe.
Réussite
On voit bien ici la session graphique KDE du serveur tourner dans une fenêtre de l'environnement graphique léger fluxbox sur une machine sans disque dur ni puissance donc.


















