J'ai quelques problèmes avec l'intégration du trousseau SSH dans OS X Mavericks. J'ai essayé de fouiller sur le site d'assistance d'Apple, mais je n'ai pas vu de personnes ayant le même problème que moi. I ont vu Beaucoup de gens qui ne savent apparemment pas très bien utiliser SSH, alors j'ai décidé d'essayer une autre communauté.
Tout d'abord, ma configuration fonctionne. Je suis capable d'utiliser ma paire de clés et de me connecter aux hôtes comme je le souhaite, mes informations d'identification étant mises en cache dans l'agent. Je suis capable de voir mes informations d'identification en cache via "ssh-add -l", comme prévu. Je suis invité à saisir mon mot de passe dans une boîte de dialogue de type OS X, avec une case à cocher indiquant "Mémoriser le mot de passe dans mon trousseau". J'ignore habituellement cette case à cocher, mais lorsque je la coche, je vois ma clé stockée dans le trousseau. Cette clé stockée dans le trousseau n'est apparemment jamais utilisée, puisque je dispose d'un mot de passe. C'est du moins ce que j'ai pu constater en lisant diverses informations. Lorsque je saisis mon mot de passe dans la boîte de dialogue et que la clé est mise en cache dans l'agent, je me connecte avec succès, mais pas avant d'avoir reçu le message "Saving password to keychain failed". C'est le fait de voir ce message d'erreur qui m'a poussé à chercher plus loin ; je n'aime pas recevoir une erreur à chaque fois que je me connecte.
Les choses deviennent intéressantes lorsqu'on regarde la page de manuel SSH_CONFIG(5) . Il existe deux options pour gérer le trousseau de clés, spécifiques à Apple : AskPassGUI, et KeychainIntegration. Vous pouvez les activer ou les désactiver dans ~/.ssh/config, ce qui donne des résultats intéressants.
Si vous définissez AskPassGUI sur non, vous ne serez plus invité par une boîte de dialogue de style OS X, mais par une ligne de texte dans votre terminal. Ce n'est pas un problème. Mais si vous faites cela, ssh-agent ne mettra pas en cache vos informations d'identification. C'est un problème évident, et c'est frustrant car je pourrais facilement vivre avec l'invite textuelle si les informations d'identification étaient mises en cache.
En fixant KeychainIntegration à no, ssh lance une erreur grave, comme suit :
~/.ssh/config: line 11: Bad configuration option: KeychainIntegration
~/.ssh/config: terminating, 1 bad configuration options
Ma question, tout simplement, est la suivante : Existe-t-il un moyen de désactiver réellement l'intégration du trousseau d'OS X pour SSH ?