Objectif: le user1@hostA doit pouvoir faire un ssh user2@hostB sans saisir de mot de passe.
Il faut modifier les lignes suivantes dans /etc/ssh/sshd_config:
RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys # /etc/init.d/sshd restart
Il faut que chaque user ait une clé publique:
$ ssh-keygen -t rsa puis appuyer sur ENTER jusqu'a la fin, les valeurs par defaut sont ok. Devrait créer les fichiers $HOME/.ssh/id_rsa*.
Il faut récupérer la clé publique de user1 et la placer dans les authorized_keys du user2:
$ ssh user1@hostA 'cat .ssh/id_rsa.pub' >>/home/user2/.ssh/authorized_keys
Vérifier que le host présent en fin de clé publique est bien connu:
$ cat id_rsa.pub ssh-rsa AAAA... ...c36KE= parker@euler $ host euler si l'hote est inconnu, il faut l'ajouter dans le ``/etc/hosts``
Si malgré ces informations vous rencontrez des problèmes de connexion, pensez à lancer ssh avec l'option verbose (ssh -v user2@hostB).
Faites attention aux droits sur les fichiers du dossier .ssh/, ils doivent être du type rw-r--r--.
D'accord? pas d'accord? suggestions? faute d'orthographe?