web-dev-qa-db-fra.com

Comment effacer les entrées de ssh-agent (sous Mac OS X)?

J'utilise Mac OS X et il semble qu'après le SSH sur plusieurs machines, en utilisant des fichiers d'identité, mon 'ssh-agent' s'accumule beaucoup d’identité/de clés et en propose parfois un trop grand nombre à une machine distante, ce qui les oblige à me lancer avant la connexion:

Déconnexion reçue à partir de 10.12.10.16: 2: Trop d'échecs d'authentification pour cwd

C'est assez évident ce qui se passe, et cette page en parle plus en détail:

Les serveurs SSH vous permettent seulement d'essayer de vous authentifier un certain nombre de fois. Chaque tentative de mot de passe infructueuse, chaque identité de clé publique/clé proposée, etc., échouent dans l'une de ces tentatives. Si votre agent contient de nombreuses clés SSH, vous constaterez peut-être qu'un serveur SSH peut vous expulser avant même de vous permettre de tenter une authentification par mot de passe. Si tel est le cas, il existe quelques solutions de contournement différentes.

Le redémarrage efface l'agent, puis tout fonctionne à nouveau correctement. Je peux également ajouter cette ligne à mon fichier .ssh/config pour le forcer à utiliser l'authentification par mot de passe:

PreferredAuthentications keyboard-interactive,password

Quoi qu'il en soit, j'ai vu la note sur la page à laquelle je faisais référence qui parlait de la suppression de clés de l'agent, mais je ne sais pas si cela s'applique sur un Mac, car elles semblent être effacées après le redémarrage de toute façon.

Existe-t-il un moyen simple d'effacer toutes les clés de 'ssh-agent' (la même chose qui se produit lors du redémarrage)?

53
cwd

Vos clés SSH devraient ne pas être automatiquement ajoutées à l'agent simplement parce que vous êtes SSH sur un serveur ...

Exécutez ssh-add -l pour répertorier les clés de l'agent, ssh-add -D pour nettoyer toutes les clés.

89
grawity

Un autre moyen de limiter le contrôle des clés consiste à ajouter IdentitiesOnly yes et IdentityFile ~/.ssh/<nameofkey> à votre fichier /.ssh/config.

0
Leo Fisher