ssh-agent, ssh-add, zsh et Leopard

damien_t

Membre actif
21 Juin 2004
295
13
43
Bonsoir messieurs,

J'ai refait ma conf unix aujourd'hui (zsh + screen + vim + ssh) entre tous mes macs. Idéalement, je voudrais me logger sur un des trois Macs, avoir la meme conf et me connecter sans mot de passe (et au max une seule fois avec la passphrase) aux autres Macs. Cela fonctionne très bien avec Tiger et SSHKeychain.

J'ai un doute sur le fonctionnement de ssh-agent sur Leopard:
Est-ce que je dois faire un eval `ssh-agent` dans mon .zshrc (pour qu'il soit exécuté au login via ssh) ? D'après ce que j'ai compris, ssh-agent est lancé par launchd "quand il faut" (OnDemand ?) Mais avant le login. Mais ne demande la passphrase de la clé privée qu'à la première utilisation de celle-ci.

Or, quand je fais un ssh-add en ligne de commande avec Leopard, j'ai le message "Could not open a connection to your authentication agent." et effectivement, les variables d'environnement $SSH_AUTH_SOCK, $SSH_AGENT_PID ne sont pas renseignées. Mais à ce moment-là, ssh-agent est en mémoire et il devrait donner accès aux clés qu'il détient. si je fais un eval `ssh-agent` en ligne de commande, les clés privées sont chargées dans le cache comme il faut.

Mes authentifications clés publiques / privées fonctionnent, les passphrases sont enregistrées dans les trousseaux d'accès et il me semble que les ssh-agent fonctionnement correctement (pas sur). SSH vient directement d'Apple ($PATH correct, pas de macports). Les fichiers de conf zsh sont communs à toutes les machines ("subversionnés" + conf additionnelle par machine et par OS)

A cela, je rajoute que le trousseau d'accès semble stocker la passphrase de ma clé privée (mais je ne sais plus comment je m'y suis pris), les options '-K' et '-k' de la commande 'ssh-add' + le fait que je suis sur trois Macs (deux léos et un tiger avec SSHKeychain)

Bref, je suis complètement paumé :)

Sous Léopard, faut-il faire un eval `ssh-agent` dans le .zshenv (ou .zshrc, .zprofile) pour les shells ? Merci d'avance.

(il est tard, je verrai plus tard pour l'AgentForwarding et les tunnels SSH)