ssh nie używa kluczy przekazanych przez agenta


2

I ssh od localcelu X, i chciałbym z ssh Xdo Ykorzystania chronione hasłem kluczy RSA, ze wszystkie moje klucze prywatne przechowywane na local. Jednak,

local> ssh -A X
X> ssh Y
Received disconnect: 2: Too many authentication failures

Wynika to z faktu, że mam za dużo kluczy w agencie i nie dostaje się do odpowiedniego klucza, zanim serwer Yuzna, że ​​jestem złośliwy. Mogę to potwierdzić, usuwając wszystkie klucze z mojego ~/.sshoprócz tych, które są dla Xi Y, a następnie działa polecenie ssh. Nie mogę teraz określić poprawnego klucza, ssh Y -o IdentiyFile=pathponieważ właściwa ścieżka do klucza jest włączona local, a nie włączona X. Ponadto, jeśli podam -o IdentitiesOnly=yes, nigdy nie szuka kluczy dostarczonych przez agenta, szuka tylko kluczy w pliku X:~/.ssh. Jak mogę to obejść?

Odpowiedzi:


2

Ok, znalazłem rozwiązanie. W systemie Xtworzę ~/.ssh/configsekcję, dla Yktórej jest coś takiego:

Host Y
    ...
    IdentityFile ~/.ssh/id_Y.pub
    ...

gdzie ~/.ssh/id_Y.pubjest kopią (wł. X) klucza publicznego dla lokalnego do Y. sshdmusi tylko wiedzieć, gdzie jest klucz publiczny, dowie się wszystkiego, czego potrzebuje od agenta.


OMG, wszędzie szukałem tego rozwiązania!
— winni2k
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.