20 votes

Le trousseau d'OS X continue de me demander ma phrase de passe SSH même si je l'ai enregistrée (OS X 10.6.8)

Chaque fois que je me connecte à un serveur distant avec SSH, le trousseau d'OS X me demande de me souvenir de la phrase de passe SSH. Je saisis la phrase de passe et je coche la case pour la mémoriser. Je me connecte ensuite correctement au serveur, mais la fois suivante, je suis à nouveau invité à le faire, et ainsi de suite...

J'ai une clé privée pour me connecter à mon serveur et la connexion fonctionne. Dans mon fichier hosts, j'ai :

Host myhost
    HostName xxx.xxx.xxx.xx
    GlobalKnownHostsFile ~/.ssh/known_hosts
    port 22
    User myuser
    IdentityFile ~/.ssh/mykey_dsa
    IdentitiesOnly yes

et puis je tape ssh myhost

Ce n'est qu'un problème récent, je soupçonne donc un problème avec le trousseau de clés ? Pour être clair, je peux "ré-adhérer" au trousseau à chaque fois et me connecter mais cela ne sert à rien. Les permissions sur ma clé dsa sont définies à 600 ou -rw-------@

J'ai essayé de réparer les permissions du disque mais ça n'a rien donné. Mon Google-foo me fait également défaut, rien d'utile n'est apparu. Je ne sais donc pas si c'est un problème OS X / trousseau de clés ou un problème SSH.

mettre à jour : Lorsque j'essaie ssh -vvv myhost, je pense que cela révèle le problème :

debug1: Trying private key: /Users/danny/.ssh/mykey_dsa
debug1: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
debug3: Not a RSA1 key file /Users/danny/.ssh/mykey_dsa.
debug1: read PEM private key done: type DSA
Identity added: /Users/danny/.ssh/mykey_dsa (/Users/danny/.ssh/mykey_dsa)
debug1: read PEM private key done: type DSA
debug3: sign_and_send_pubkey
debug2: we sent a publickey packet, wait for reply
debug1: Authentication succeeded (publickey).

... et après ça, je suis connecté. Je pense que le nœud du problème est le suivant :

PEM_read_PrivateKey failed

Mise à jour 2 : Après avoir essayé la même clé et les mêmes paramètres sur un autre Mac avec 10.6.8, tout a fonctionné correctement. Je pense donc qu'il s'agit d'une question spécifique à Mac, peut-être un problème de trousseau de permissions.

Mise à jour 3 J'ai également essayé une installation propre de Mountain Lion (10.8.1) et hélas le même problème que je ne comprends absolument pas.

Possiblement lié : https://discussions.apple.com/thread/3518441?start=0&tstart=0

Mise à jour 4 C'est la réponse

13voto

Joey Robert Points 2488

Réponse copiée à partir de https://apple.stackexchange.com/a/26252/17690


Assurez-vous d'avoir un correspondant id_rsa.pub o id_dsa.pub dans votre ~/.ssh répertoire.

Quand j'ai eu un id_rsa mais pas un correspondant id_rsa.pub Mac OS X n'arrêtait pas de faire apparaître la boîte de dialogue et se souvenir du mot de passe dans mon trousseau ne faisait rien.

cd ~/.ssh
ssh-keygen -y -f id_rsa > id_rsa.pub

a généré le fichier de clé publique approprié pour moi.

Si vous aviez déjà votre fichier public à cet endroit (renommez-le sous un autre nom) et que vous générez à nouveau la clé publique en utilisant la commande ci-dessus, vous remarquerez que la clé générée et l'ancienne ne sont pas identiques. D'une manière ou d'une autre, les anciennes versions de Mac OS X ont généré une clé publique que Lion n'aime plus, la générer à nouveau corrige ce problème.

Pour les curieux, la clé est exactement la même, la partie qui change est qu'il n'y a plus de section "commentaires" après la clé sur le fichier.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X