Connexion à distance par NX

De Wiki de la communauté Mandriva.


Attention !
Avant toute utilisation de méthode de connexion à distance, veuillez lire avec attention le chapitre Sécurité


Sommaire

Versions

Tuto utilisable sur les versions

2008.0

Introduction

L'objectif de ce tutoriel est de présenter la méthode de connexion à distance à l'aide de NX de No Machine (http://www.nomachine.com/). NX permet de faire de la connexion par ouverture de session. C'est une solution propriétaire mais il existe des versions gratuites du logiciel. Les deux principaux avantages de la solution NX sont les suivants:

  • le premier est que c'est une solution entièrement sécurisée avec des solutions de cryptage, on le verra, assez poussées.
  • le deuxième est une utilisation d'algorithme de compression efficace entre le client et le serveur qui permet son utilisation à travers des modems 56K.

Préparation du serveur

NX s'appuie sur le protocole ssh. Lors de l'installation de Mandriva, le client ssh est normalement installé de base. Si ce n'est pas le cas, installez le paquet openssh-clients. Il est également nécessaire d'installer le serveur ssh à l'aide du paquet openssh-server. Après installation, le démon n'est pas lancé : tapez, en tant que root, la commande suivante :

Image:Konsole.png
[root@ordi ~]# service sshd restart

Installez les rpm client, node, server que l'on peut trouver ici :

Pour terminer tapez la commande suivante :

Image:Konsole.png
[root@ordi ~]# /usr/NX/bin/nxserver --install

Préparation du client

Installation de NX

NX s'appuie sur le protocole ssh. Lors de l'installation de Mandriva, le client ssh est normalement installé de base. Si ce n'est pas le cas, installez le paquet openssh-clients.

Installez le rpm client. Voir le chapitre précédent pour les liens vers le site de téléchargement.

Création de connexions

La création de profils de connexion se fait à l'aide du NX Connection Wizard accessible à travers le menu ci-dessous :

Image:Connexion_a_distance_NX_1.png

Passez la première fenêtre obtenue et vous arriverez ici :

Image:Connexion_a_distance_NX_3.png

Entrez le nom de la session, le nom du serveur (ou l'adresse IP) et le type de connexion.

À noter !
Le port 22 indiqué par défaut est le numéro du port par défaut du serveur openssh. Si ce numéro est différent sur votre serveur, n'oubliez pas de le changer.
À noter !
La détermination du type de connexion n'est pas un paramètre anodin. Il permet de déterminer la performance de la compression utilisée pour s'adapter au débit. De ce fait, il est également déterminant dans la qualité des graphismes obtenus.

Après avoir cliqué sur Next, vous obtenez la page suivante:

Image:Connexion_a_distance_NX_4.png

Les paramètres choisis par défaut sont normalement bon. Adaptez-les à votre convenance.

Attention !
L'option Disable encryption of all traffic est à utiliser avec précaution. En cas d'activation, votre connexion n'est plus sécurisée.

Cliquez ensuite sur Next puis Finish: votre connexion est configurée.

Connexion au serveur

Le client NX est accessible dans les menus comme indiqué dans l'image ci dessous :

Image:Connexion_a_distance_NX_1.png

A l'exécution, vous obtenez la fenêtre suivante :

Image:Connexion_a_distance_NX_2.png

Sélectionnez le profil de connexion (configuré dans le chapitre Création de connexions), indiquez votre login et mot de passe, puis cliquez sur login: la connexion s'effectue.

À noter !
Le login et le mot de passe doivent correspondre à ceux de votre serveur.
Problème connu !
A la première exécution, les fontes utilisées par le logiciel NX sont très petites, voire illisibles. La configuration de ces fontes peut être changée dans l'onglet environment, section Select NX fonts de la fenêtre de configuration obtenue en cliquant sur le bouton Configure.

Sécurité

NX s'appuie sur le protocole ssh, protocole sécurisé car totalement crypté. Néanmoins dans la configuration par défaut, il est préférable d'opérer deux modifications :

  • sécurisation de ssh
  • changement de la clé par défaut de NX.

Sécurisation de ssh

Sur le serveur, éditez le fichier /etc/ssh/sshd_config et modifiez/ajoutez les lignes suivantes :

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

Normalement tout est configuré correctement à la base à l'aide des valeurs par défaut mais mieux vaut être prévenant.

Pensez à réinitialiser le démon :

Image:Konsole.png
[root@ordi ~]# service ssd restart


Changement de la clé NX

Connectez-vous en root sur le serveur puis tapez les commandes qui suivent. D'abord la génération des clés :

Image:Konsole.png
[root@ordi ~]# /usr/NX/scripts/setup/nxserver --keygen

Ce script change les droits de certains fichiers. Il est nécessaire de les replacer correctement :

Image:Konsole.png
[utilisateur@ordi ~]$ chown nx:root /usr/NX/home/nx/.ssh/authorized_keys2
Image:Konsole.png
[utilisateur@ordi ~]$ chmod 0640 /usr/NX/home/nx/.ssh/authorized_keys2
Image:Konsole.png
[utilisateur@ordi ~]$ chown nx:root /usr/NX/home/nx/.ssh/default.id_dsa.pub
Image:Konsole.png
[utilisateur@ordi ~]$ chmod 0640 /usr/NX/home/nx/.ssh/default.id_dsa.pub

La clef publique est alors disponible sous /usr/NX/share/keys/default.id_dsa.key.

Copiez ce fichier sur le support de votre choix. Par la suite sur le client, lancez le client NX (voir chapitre Connexion au serveur) puis cliquez sur configure. La fenêtre suivante apparaît :

Image:Connexion_a_distance_NX_5.png

Cliquez sur key et voici la fenêtre obtenue :

Image:Connexion_a_distance_NX_6.png

Attention !
Juste après l'installation, la clé que vous verrez est la même que dans l'image ci-dessus. Il s'agit de la clé par défaut de NX, celle que tout le monde a, donc sans intérêt de sécurité.

Cliquez sur import et chargez le fichier contenant la clé que vous avez précédemment stockée sur votre support favori puis save.

Votre connexion est maintenant parfaitement sécurisée puisqu'elle utilisera à la fois un protocole crypté par clé RSA et une authentification par mot de passe. Bien sûr ne laissez pas traîner votre clé à tout va.

Routeur

En cas de connexion à travers Internet, n'oubliez pas de configurer votre routeur NAT, si vous en avez un, pour rediriger les connexions sur le port 22 à destination de votre serveur.

Glossaire

client: machine depuis laquelle on travaille

serveur: machine sur laquelle on souhaite se connecter

---