J'utilise Mac OS X et il semble qu'après avoir utilisé SSH sur plusieurs machines, en utilisant des fichiers d'identité, mon 'agent-ssh' accumule beaucoup d'identités / clés et en offre parfois trop à une machine distante, Lance-moi avant de te connecter
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 beaucoup de 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 .ssh/config
fichier 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 dans 'ssh-agent' (la même chose qui se produit lors du redémarrage)?
ssh-add -l
je ne reçois rien. Si je tape,ssh -i ~/keyFileLocation.dsa un@remotehost
je reçois une boîte de dialogue contextuelle OS X demandant la phrase secrète. Je le tape dans et ensuite il me connecte. Si je me déconnecte puis tape,ssh-add -l
cela me montre l'identité que je viens d'utiliser. Après avoir redémarré l'ordinateur et tapé,ssh-add -l
il est à nouveau vide.ssh-add -D
a bien fonctionné pour effacer les clés sans redémarrer. Merci!AddKeysToAgent
option de configuration, conçue spécifiquement pour ajouter vos clés SSH à l'agent simplement parce que vous avez SSH sur un serveur.Une autre façon de limiter les clés sont vérifiées consiste à ajouter
IdentitiesOnly yes
etIdentityFile ~/.ssh/<nameofkey>
à votre/.ssh/config
fichier.la source