J'utilise l'authentification par clé publique sur mes serveurs depuis un certain temps maintenant, mais je rencontre des problèmes avec un nouveau «client» essayant de se connecter à github . J'ai lu de nombreux threads pour vérifier que mes autorisations sont correctement configurées et j'ai généré une nouvelle clé pour github. Le problème auquel je suis confronté est que ssh demande ma phrase secrète même si je n'ai pas défini de phrase secrète. J'ai même refait la clé pour être sûr à 100% que je n'ai pas entré de phrase secrète.
ssh -vvv donne la sortie associée suivante:
debug1: Offering public key: /home/me/.ssh/github.pub
debug2: we sent a publickey packet, wait for reply
debug3: Wrote 368 bytes for a total of 1495
debug1: Remote: Forced command: gerve mygithubusername c3:71:db:34:98:30:6d:c2:ca:d9:51:a8:c6:1b:fc:f7
debug1: Remote: Port forwarding disabled.
debug1: Remote: X11 forwarding disabled.
debug1: Remote: Agent forwarding disabled.
debug1: Remote: Pty allocation disabled.
debug1: Server accepts key: pkalg ssh-rsa blen 277
debug2: input_userauth_pk_ok: fp c3:71:db:34:98:30:6d:c2:ca:d9:51:a8:c6:1b:fc:f7
debug3: sign_and_send_pubkey
debug1: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Enter passphrase for key '/home/me/.ssh/github.pub':
J'ai cherché à comprendre pourquoi il me dit que PEM_read_PrivateKey a échoué, mais je ne trouve pas de solution.
Je n'utilise pas d'agent ou quoi que ce soit. Je configure mon fichier ~ / .ssh / config de la manière suivante:
Host github
Host github.com
Hostname github.com
User git
PubkeyAuthentication yes
IdentityFile /home/me/.ssh/github.pub
Merci d'avance.
la source
Réponses:
Lorsque vous utilisez l'
IdentityFile
option dans votre,~/.ssh/config
vous pointez sur la clé privée et non sur la clé publique .De
man ssh_config
:Ainsi, votre
~/.ssh/config
entrée devrait ressembler à:la source
Nous avons eu ce problème, et c'était une erreur de copier-coller. Un seul
%
symbole avait été ajouté à la fin du fichier clé (donc la dernière ligne l'était-----END RSA PRIVATE KEY-----%
). Il n'y a eu aucune erreur ou information de débogage ou quoi que ce soit d'autre pour suggérer que la clé était de mauvaise longueur ou mal formatée, mais ssh a demandé une phrase de passe.la source
Dans mon cas, le problème était que mon client SSH ne prend pas en charge les clés ED25519. La solution consiste à créer une clé RSA et à l'utiliser à la place.
Ce problème se produit avec OpenSSH <6,5 (exécution
ssh -V
) et PuTTY <0,68 .Cela peut être vu dans la sortie suivante de
ssh -vvv
:Le premier bloc décrit ce que le client prend en charge et le second ce que le serveur prend en charge . Comme vous pouvez le voir, il n'y a aucune mention de «curve25519» dans la moitié supérieure, indiquant que le client ne prend pas en charge cela.
la source
Dans mon équipe, lorsque cela se produit, ce n'est pas un problème avec quoi que ce soit localement. La clé ssh et / ou l'accès de l'utilisateur n'a pas été correctement configuré sur le serveur auquel il se connecte (dans notre cas une plateforme d'hébergement). Pour une raison quelconque, cela déclenche une invite pour une clé ssh inexistante.
la source