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)
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.
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.
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.
On se connecte comme avant, sauf qu'à la place d'utiliser le mot de passe, on utilise la pathphrase (si renseignée)