A quoi sert cette page ?

Quand on veut pouvoir se connecter sur un serveur distant en SSH sans que le mot de passe se balade sur le réseau, on peut utiliser une clef SSH
Cette technique permet de ne pas donner le mot de passe root d'une machine.
On peut mettre en place sur pathphrase qui ne transitera pas sur le réseau, ou la laisser vide pour se connecter directement sans avoir à taper quelque chose (pratique lors d'execution réulières de scripts sur machine distante)

Prérequis

La préparation : générer le clef

La clef SSH doit être générée sur le client qui doit se connecter sur un serveur

La commande suivante permet de générer une clef ssh, et générer un fichier .ssh/id_ras.pub dans le home de l'utilisateur

ssh-keygen -t rsa

On peut garder la destination par défaut, ou au besoin, la déplacer.

L'installation de la clef sur le serveur

Transfert de la clef publique

La commande est de la forme :

scp .ssh/id_rsa.pub root@serveur:/root/client1.pub

Remarque : renomer le nom du fichier destination permet de se souvenir à quelle machine appartient telle clef.

La mise en place

Se connecter sur le serveur (ou le faire à distance)

ssh cat /root/client1.pub /root/.ssh/authorized_keys

Remarque : Sur certaines versions de ssh le fichier authorized_keys s'appelle autrement.

L'utilisation

On se connecte comme avant, sauf qu'à la place d'utiliser le mot de passe, on utilise la pathphrase (si renseignée)