Clé SSH refusée... et si c'était dans les droits du fichier
Un drôle de titre pour certains, mais peut-être que d'autres se reconnaîtront. Si vous utilisez des clés publiques/privées pour vous authentifier sur des services en ligne comme Github, AUR (Archlinux), etc. et que vous vous confrontez à un serveur qui refuse obstinément votre clé [Permission denied (publickey)], ceci peut avoir plusieurs causes.
L'une d'elles correspond peut-être à ce scénario : vous travaillez sur plus d'un ordinateur et vous avez copié votre clé de l'ordinateur sur lequel elle a été générée vers un second ordinateur. Votre clé fonctionne toujours sur l'ordinateur d'origine, mais elle est refusée sur le second ordinateur. Le problème n'est donc pas avec la clé puisqu'elle est identique aux deux endroits. En fait, il faut savoir que seulement vous, comme utilisateur, devriez avoir accès au fichier de votre clé privée. Ah! Donc, si vous regardez les droits de lecture, d'écriture et d'exécution, vous seul devez avoir des droits (rw), personne d'autre.
Lancez donc un chmod 600 $dossierverscléprivée/$nomcléprivée, exemple
chmod 600 ~/johndoe/.ssh/id_rsa
Tentez de vous identifier à nouveau.
Voilà quelques semaines que je rencontrais cette erreur sur un second ordinateur et je n'avais pas pris le temps de chercher. J'ai maintenant réglé mon problème et appris que les clés privées doivent être privées jusqu'au bout.