Depuis hier, chaque fois que j'essaye de me connecter à un serveur ssh, on me demande mon mot de passe. Que dois-je faire pour que SSH ne demande pas mon mot de passe à chaque fois.
Depuis hier, chaque fois que j'essaye de me connecter à un serveur ssh, on me demande mon mot de passe. Que dois-je faire pour que SSH ne demande pas mon mot de passe à chaque fois.
Réponses:
Insérez votre clé publique hostnachine:~/.ssh/authorized_keys
et assurez-vous qu'elle dispose des autorisations appropriées - chmod 600. Consultez la page de manuel, section AUTHENTIFICATION, pour plus de détails. Notez que sshd peut être configuré pour interdire cette méthode de connexion bien que je ne sache pas pourquoi.
Vérifiez les autorisations de répertoire et les autorisations de fichier.
$HOME
ne peut pas être inscriptible par groupe ou autre.
$HOME/.ssh
doit avoir des 700
autorisations, non lisibles, inscriptibles ou exécutables par groupe et autres.
$HOME/.ssh/authorized_keys
ne pas être inscriptible ou exécutable par quiconque.
Si vous trouvez que les autorisations ne sont pas assez strictes, essayez de déterminer la cause du problème. La dernière fois que cela m'est arrivé, j'avais compilé PHP à partir de zéro. L'exécution en make install
tant que root (Slackware) a changé les autorisations et la propriété de /
ou /home
si je me souviens bien, et a empêché ssh de travailler avec authorized_keys
et les id_rsa.pub
fichiers qui étaient en place et fonctionnaient depuis des lustres. Vous souhaitez déterminer la cause du problème, car une modification de la propriété et / ou des autorisations du répertoire peut se produire en raison d'une installation de rootkit ou quelque chose du genre.
ssh-add -l
.