Jak wyodrębnić odciski palców z .ssh / known_hosts?


72

Mój laptop ma dobrze wypełniony ~/.ssh/known_hostsplik. Chciałbym wykorzystać to podczas łączenia się ze zdalnymi hostami z mojego komputera, ponieważ śledzenie odcisków palców może być prawdziwym obowiązkiem. Jednak nie mogę znaleźć sposobu, aby zapytać ssh-keygenlub ssh-keyscanpodać lokalnie znany odcisk palca dla znanych hostów. Jakieś pomysły?

Odpowiedzi:


95

Wypróbuj to polecenie:

% ssh-keygen -l -f ~/.ssh/known_hosts

2048 c2:e7:c0:9f:cd:c8:54:88:ac:b3:6b:a6:51:73:2b:e3 mach1,192.168.1.3 (RSA)
2048 a2:5e:8c:4e:2e:be:be:eb:23:12:5e:fe:6c:4b:23:dd mach2,192.168.1.1 (RSA)
1024 ae:5f:bc:e3:33:c3:dd:45:1e:18:1a:46:d1:d6:d2:39 mach3,192.168.1.6 (RSA)
...
...

chcę tylko jednego hosta:

% ssh-keygen -l -f ~/.ssh/known_hosts -F mach1
2048 c2:e7:c0:9f:cd:c8:54:88:ac:b3:6b:a6:51:73:2b:e3 mach1 (RSA)

Zasoby

http://www.gossamer-threads.com/lists/openssh/users/49503


9
Dzięki! Nie wiedziałem, że możesz użyć -lz plikiem znane_hosty. Oto wersja, która jeszcze lepiej odpowiada na moje pytanie:ssh-keygen -l -f ~/.ssh/known_hosts -F example.com
— traktuj swoje mody dobrze

4
Nawiasem mówiąc, powodem, dla którego -F jest dla mnie ważny, jest to, że każda zainstalowana wersja SSH zaszyfrowała wszystkie nazwy hostów w pliku znane_hosty. Nie mogę po prostu grepować za linią, którą chcę. (Jest to przydatny środek bezpieczeństwa, jeśli ktoś kiedykolwiek dostanie mój klucz prywatny - jest mniej prawdopodobne, że dowie się, do jakich maszyn może go dostać.)
— traktuj swoje mody dobrze

13
Warto zauważyć, że najnowsze wersje openssh domyślnie mają skrót SHA256. Aby uzyskać starszy skrót md5, użyj -E md5opcji.
— JumperPunk

3
A jeśli używany jest niestandardowy port:[example.com]:1234
— traktuj swoje mody dobrze

3
Aby uzyskać odciski palców klucza hosta dla serwera SSH (zastąp przykładowy adres IP ssh-keyscan 123.123.12.34 | ssh-keygen -l -f -
— TrinitronX
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.