SSH permet de démarrer des applications graphiques à distance mais ce n’est clairement pas la panacée niveau rapidité sur une ligne ADSL. Pour s’en convaincre, une fois connecté en SSH, lancez tout simplement n’importe quelle application graphique depuis la ligne de commande. Ex : $ gedit
La fenêtre met du temps à s’afficher, répond lentement et taper du texte avec une vitesse d’affichage de 2sec/image est impossible.
Si on met de coté VNC qui est plutot lent, ne sert à qu’a prendre en main une session déja démarrée et n’est pas sécurisé, on peut s’intéresser à NX qui permet de démarrer une session X à distance à travers un tunnel SSH. La classe quoi :)
Sur le serveur
# urpmi freenx
le serveur est installé et lancé automatiquement.
FreeNX est GPL
Si vous avez un liste restreinte des utilisateurs pouvant se connecter en SSH, vous devez ajouter l’utilisateur nx à la ligne AllowUsers dans /etc/ssh/sshd_config.
Syntaxe : AllowUsers utilisateur1 nx
Le serveur crée sa propre clé d’authentification que vous devrez trimbaler avec vous pour vous connecter (en plus de votre login d’utilisateur classique). Pensez donc à emporter le fichier /var/lib/nxserver/nxhome/.ssh/client.id_dsa.key (ou son contenu)
Sur le client
Vous devez télécharger le client de NoMachine suivant votre plateforme
Sous linux, pour lancer le client : $ /usr/NX/bin/nxclient
À la fin de la configuration du serveur à contacter, cochez la case Show the Advanced configuration dialog. Vous verrez alors un bouton Key qui vous permettra de renseigner la clé d’authentification unique de votre serveur.
Voila, vous n’avez plus qu’à vous connecter avec votre couple login/mdp distant et bénéficier de votre bureau à distance.
On peut toutefois repocher qu’il n’existe pas de client NX libre bien que le serveur et le protocole NX le soient.
D’autre part, NX ne supporte pas la connexion des utilisateurs SSH par clés asymétriques. Si vous avez désactivé la connection par mot de passe dans la configuration de SSH vous devrez créer de nouveaux mots de passe aux utilisateurs spécialement pour la connexion par NX.
Pour cela sur le serveur :
# nxserver –adduser toto
# nxserver –passwd toto
# nxserver –restart
C’est vraiment pas terrible comme système, puisque l’utilisateur ne peut pas changer son mot de passe tout seul, ni le lier automatiquement avec son mot de passe local. De plus, ca rend la tentative d’intrusion par force brute possible.
Au final est ce que sa permet un « control » à distance à peu près fluide ?
snivel : oui ! Mais à la différence de VNC,tu démarres une nouvelle session graphique sur l’odinateur et non un controle d’une session utilisateur déja lancée.
Normalement avec vnc-server (sous debian/ubuntu), vnc peut ouvrir une nouvelle session mais j’ai jamais testé et ça résoud pas le problème de la sécurité de vnc.
Sinon y a Vino-server/Vinagre.
Je sais pas sous Fedora s’il est le remplaçant de vnc mais sous Ubuntu Hardy Heron il le sera…
En « tweakant » un peu gdm.conf, il est possible de faire en sorte que lorsqu’on se connecte au serveur vnc, on se retrouve face au login de gdm.
De plus, c’est gdm qui se charge de démarrer le serveur vnc.
Concernant l’encryption, il est très simple de tunneler vnc dans ssh.
J’ai essayé les deux: Freenx et vnc (ou vinagre qui utilise le protocole de vnc) . VNC ou vinagre sont tres lents et inutilisable pour travailler via le net. En revanche Freenx ou Nx permet de compresser de manière tres efficace le deport de display avec des performances egales sinon meilleures que celles fournies par Terminal Server de Windows.