Come estraggo le impronte digitali da .ssh / known_hosts?


72

Il mio laptop ha un ~/.ssh/known_hostsfile ben popolato . Mi piacerebbe sfruttarlo quando mi collego ad host remoti dal mio desktop, dal momento che rintracciare le impronte digitali può essere una vera seccatura. Tuttavia, non riesco a trovare un modo per chiedere ssh-keygeno ssh-keyscandirmi l'impronta digitale conosciuta localmente per host noti. Qualche idea?

Risposte:


95

Prova questo comando:

% 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)
...
...

voglio solo un singolo host:

% 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)

risorse

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


9
Grazie! Non sapevo che si potesse usare -lcon un file known_hosts. Ecco una versione che risponde ancora meglio alla mia domanda:ssh-keygen -l -f ~/.ssh/known_hosts -F example.com
tratta bene le tue mod il

4
Per inciso, il motivo per cui -F è importante per me è che qualunque versione di SSH che ho installato ha eseguito l'hashing di tutti i nomi host nel file known_hosts. Non posso semplicemente grep per la linea che voglio. (Questa è una misura di sicurezza utile se qualcuno ottiene la mia chiave privata - è meno probabile che capiscano in quali macchine può farcela.)
Tratta bene le tue mod

13
Vale la pena notare che le versioni recenti di openssh impostano automaticamente un hash SHA256. Per ottenere l'hash md5 precedente, usa l' -E md5opzione.
JumperPunk

3
E se viene utilizzata una porta non standard:[example.com]:1234
Tratta bene le tue mod

3
Per ottenere le impronte digitali della chiave host per un server SSH (sostituire l'IP di esempio con l'IP del server o il nome host):ssh-keyscan 123.123.12.34 | ssh-keygen -l -f -
TrinitronX
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.