Ceci est une ancienne révision du document !
Tunneliser une connexion VNC via SSH
Le tutoriel ci-dessous va vous permettre de prendre le contrôle d'une machine distante via ssh. Nous créerons à cet effet un lanceur qui sera inclus dans le menu principal. L'intérêt de l'utilisation de X4vncviewer en lieu et place de vinagre (inclus dans ubuntu depuis 8.04) est l'option -via. Celle-ci permet à vncviewer de se connecter directement en SSH. Cette méthode permet de sécuriser l'accès VNC classique hautement intrusif de l'extérieur.
paquets nécessaires pour ce tutoriel:
sur le poste client:
- openssh-client (normalement installé par défaut sous ubuntu)
sur le poste serveur
1ère étape: création d'une paire de clefs sur le poste client
La méthode de connexion SSH choisie pour ce tutoriel est celle de l'Authentification par clé publique/privée. De cette manière, il faut être en possession de non plus une mais de deux informations pour se connecter (avoir la clé privée & connaître le mot de passe de cette clé). Le type de clé utiliser ici est de type dsa 1024 bits.
Ceci peut permettre par exemple :
- à un admin de se connecter à des centaines de machines sans devoir connaître des centaines de mots de passe différents ;
- de ne pas avoir un mot de passe à saisir toutes les 2 minutes (en utilisant ssh-agent).
À moins que vous n'ayez déjà un couple de clés, vous devez d'abord en créer. Tapez :
ssh-keygen -t dsa
Il vous sera alors demandé où sauver la clé privée (acceptez juste l'endroit par défaut, et ne changez pas le nom par défaut) puis de choisir une passphrase. La passphrase est employée pour chiffrer votre clé privée. Toute personne qui obtiendrait l'accès à votre clé privée (non protégée) aurait vos permissions sur d'autres ordinateurs. Veuillez prendre un instant et choisissez une très bonne passphrase.
Votre clef publique a été créée avec la nouvelle clé privée. Elles sont localisées dans le dossier caché « ~/.ssh/id_dsa.pub »(clé publique) et « ~/.ssh/id_dsa »(clé privée) .
2ème étape: Configuration du poste client
Fichier de configuration SSH-client
Editez le fichier de configuration SSH client :
sudo gedit /etc/ssh/ssh_config
Décocher le # présent devant PasswordAuthentication et passer la valeur à no (ceci exclut l'authentification par mot de passe). Faîtes de même avec Protocol pour qu'il ne reste que Protocol 2 (le protocole 1 des clés RSA ou DSA est à proscrire car moins sécurisé)
Installation de x4vncviewer
Installer le paquet par synaptic ou cliquez ici apt://x4vncviewer
3ème étape: diffusion de la clé publique sur le poste serveur
Enregistrez sur le ou les postes auxquels vous souhaitez accéder la clé publique copiée de votre fichier caché « ~/.ssh/id_dsa.pub ». Vous devez l'enregistrez dans le fichier caché « ~/.ssh/ » du poste serveur. Puis renommez sur le poste serveur ce fichier en authorized_keys2 (le 2 signifie qu'on souhaite bénéficier du protocole SSH2). Vous vous retrouver alors avec le fichier caché « ~/.ssh/authorized_keys2 »
Vous pouvez diffuser cette clé par le moyen de votre choix (copie par clé usb, envoi email…)
4ème étape: configuration du poste serveur
Editez le fichier SSH-serveur:
sudo gedit /etc/ssh/sshd_config
wiki encore en construction