Connection à l'IDRIS avec les clefs SSH


Vous êtes ici : Support technique → FAQ généraleRéseau → Connection à l'IDRIS avec les clefs SSH


Génération des clés privées et publiques

Ces clés seront utilisées de manière transparente pour l'utilisateur à chaque commande utilisant le protocole ssh. Lors de la génération de ces clés, vous pouvez également rentrer un mot de passe (passphrase) pour protéger votre clé privée, cette passphrase vous sera alors demandée à chaque connexion.

Les clés sont générées par la commande suivante. Trois questions vous sont posées. Nous vous conseillons de taper RETURN à la première. A la seconde et à la troisième, vous pouvez entrer votre passphrase qui protégera vos clés.

mach-locale.domaine.fr : ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/machine-locale/login/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/machine-locale/login/.ssh/id_rsa.
Your public key has been saved in /home/machine-locale/login/.ssh/id_rsa.pub.
The key fingerprint is:
26:e3:d4:29:b7:5b:29:15:d7:68:39:eb:a3:12:0b:02 login@machine-locale.domaine.fr
Deux fichiers : id_rsa et id_rsa.pub sont créés dans le repertoire .ssh de la machine locale.
La clé publique doit ensuite être ajoutée dans le fichier authorized_keys du répertoire ~/.ssh de la machine distante.

Transfert du fichier contenant la clé publique sur la machine distante

machine-locale : cat ~/.ssh/id_rsa.pub | ssh rlabxxx@machine.idris.fr "cat - >> ~/.ssh/authorized_keys"

Attention : pour que la clé soit prise en compte, seul votre login doit avoir les accès en écriture sur les répertoires $HOME et $HOME/.ssh ainsi que sur le fichier $HOME/.ssh/authorized_keys. Voici comment se passera alors une connexion de votre machine locale vers une machine de l'IDRIS :

machine-locale : ssh -X machine.idris.fr -l rlabxxx
Enter passphrase for key '/home/machine-locale/login/.ssh/id_rsa':

Ne plus taper sa passphrase

Deux solutions existent : l'agent ssh-agent et la passphrase vide.

L'agent ssh-agent

Il faut taper les deux commandes suivantes :

machine-locale : eval 'ssh-agent'
machine-locale : ssh-add ~/.ssh/id_rsa 
 Enter passphrase for /home/machine-locale/login/.ssh/id_rsa: 
 Identity added: /home/machine-locale/login/.ssh/id_rsa 
 (/home/machine-locale/login/.ssh/id_rsa)

Attention : la connexion pourra se faire sans saisie de la passphrase seulement pendant la durée de vie de l'agent. Vous devrez donc le relancer à chaque nouvelle session.

La passphrase vide

Vous avez la possibilité de mettre une passphrase vide lors de la commande ssh-keygen -t rsa. Pour cela, il faut taper RETURN au moment d'entrer la passphrase :

mach-locale.domaine.fr : ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/machine-locale/login/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/machine-locale/login/.ssh/id_rsa.
Your public key has been saved in /home/machine-locale/login/.ssh/id_rsa.pub.
The key fingerprint is:
26:e3:d4:29:b7:5b:29:15:d7:68:39:eb:a3:12:0b:02 login@machine-locale.domaine.fr

Dans ce cas, les étapes décrites précédemment sont à réaliser une fois pour toutes sur la (les) machine(s) sur la(les)quelle(s) les commandes utilisant un protocole ssh seront executées. Aucune réactualisation, type changement de mot de passe, ne sera nécessaire par la suite.

Recommandations de l'IDRIS

Pour plus de sécurité, nous vous demandons deux choses :


© CNRS - IDRIS, 23/04/2012