Utilisation de clefs et raccourcis ssh
Ce document n'a pas été validé par la communauté. Soyez prudent vis-à-vis de son contenu! Si au cours de vos manipulations un problème survenait, vous ne pouvez en aucun cas incriminer ce site. Posez vos questions sur le forum Vous en avez marre de taper 231 fois votre mot de passe SSH et vous en avez marre surtout si le nom de la machine est nomtreslong.lichtenstein.loin et le login bouvardetpecuchet.flaubert. On souhaiterait faire directement :
ssh labas
Pour cela nous allons créer une clef privée et une clef publique. L'authentification se fera via cette paire de clefs.
Fabrication des clefs
Faire
$ ssh-keygen -t dsa
Lui donner un nom par exemple labas:
Enter file in which to save the key (/home/user/.ssh/id_dsa): ~/.ssh/labas
Taper <return> pour les passphrases.
Configuration de ssh
Éditer le fichier ~/.ssh/config et rajouter
Host labas HostName nomtreslong.lichtenstein.loin User bouvardetpecuchet.flaubert PasswordAuthentication no IdentityFile ~/.ssh/labas
Configuration du serveur SSH
Sur la machine nomtreslong.lichtenstein.loin, il faut ajouter notre clef publique.
- Soit en exécutant simplement la commande suivante :
ssh-copy-id -i ~/.ssh/labas.pub bouvardetpecuchet.flaubert@nomtreslong.lichtenstein.loin
- Soit en rajoutant à la fin du fichier ~/.ssh/authorized_keys le contenu du fichier ~/.ssh/labas.pub qui a été créé sur votre machine. Ce fichier est du texte pur et un copier/coller suffit.
Changer les droits de ~/.ssh/authorized_keys en 600 (ou 644 qui marche aussi).
Test final
Pour se connecter sur la machine voulue, au lieu de
$ ssh bouvardetpecuchet.flaubert@nomtreslong.lichtenstein.loin
et de taper le mot de passe, il suffit de faire
$ ssh labas
Pour copier un fichier, un
$ scp fichier labas:~
marchera
Problèmes éventuels
Ça ne marche pas, il demande les mots de passe. Vérifiez que les droits de ~/.ssh/authorized_keys soient rw-------, sinon la reconnaissance par clefs est désactivée. Il faut également vérifier à qui appartient le répertoire ~ et ses droits. Méfiez vous également des passphrases si vous voulez une connexion automatique (scp par exemple). Éventuellement, si les soucis demeurent, regardez la configuration de /etc/ssh/sshd_config sur nomtreslong.lichtenstein.loin. Elle est peut être exotique et exige quoiqu'il arrive la reconnaissance par mot de passe. Il doit y avoir l'option
PubkeyAuthentication yes