Je dirais que la solution la plus sûre est de générer une clé SSH sans mot de passe pour chaque machine et de l'ajouter à la liste authorized_keys de l'autre.
Sur la machine 1 (en tant qu'utilisateur qui se connecte à l'autre serveur) :
$ ssh-keygen -t rsa
$ ssh-add ~/.ssh/id_rsa
$ cat .ssh/id_rsa.pub
Si keygen vous demande un mot de passe, appuyez simplement sur la touche Entrée pour créer une clé sans mot de passe.
Sur la machine 2 :
- Créer ou modifier
~/.ssh/authorized_keys
pour l'utilisateur avec lequel vous vous connectez.
- Ajoutez le contenu de
id_rsa.pub
(assurez-vous que c'est le .pub et non la clé privée) au fichier. Tous les id_rsa.pub
doit tenir sur une seule ligne.
Lorsque cela est fait, vous devriez être en mesure de le faire à partir de la machine 1 :
$ ssh username@machine-2
et être simplement connecté sans entrer votre mot de passe. Il en va de même pour scp/sftp.
Si cela ne fonctionne pas, assurez-vous que vous avez PubkeyAuthentication yes
dans votre /etc/ssh/sshd_config