Jak zmusić ssh do użycia określonego klucza prywatnego?

40

Za pomocą ssh -i <private key filename>możesz poinstruować ssh, aby użył dodatkowego klucza prywatnego do próby uwierzytelnienia.

Dokumentacja nie wyjaśnia, jak jawnie używać tylko tego klucza.

Herman van Rink
źródło

Odpowiedzi:

57

Możesz użyć opcji IdentitiesOnly:

ssh -o "IdentitiesOnly=yes" -i <private key filename> <hostname>

Herman van Rink
źródło
12
w rzeczywistości „IdentitiesOnly” wyłącza monitowanie ssh-agent, ale nadal oferuje domyślne i klucze ssh_config'd.
rogerovo
2
Ważną rzeczą dla mnie było to, że nie szuka np. W moim katalogu ~ / .ssh kluczy do wypróbowania.
Herman van Rink
Dzięki! Potrzebowałem -o "IdentitiesOnly=yes"bitu, aby zapobiec ssh-agentzastąpieniu określonego klucza prywatnego.
user2708667
Jest to bardzo przydatne do określania, który klucz działa z danym hostem, gdy klucze są buforowane w ssh-agent. Jedynym sposobem, w jaki mogłem to rozgryźć bez tej flagi, było użycie strace do zrzucenia IO, co było dość nużące.
Wil