Question Comment puis-je trouver mon empreinte digitale RSA?


J'ai besoin de faire l'audit des clés ssh pour GitHub, mais je ne suis pas sûr de savoir comment trouver mon empreinte digitale RSA. J'ai d'abord suivi un guide pour faire la mise en place sur une boîte ubuntu 10.04 hébergé par linode.

Quelle commande dois-je entrer pour trouver mon empreinte digitale de clé RSA si je suis connecté à distance à l'aide de Putty?


697
2018-03-07 18:48


origine


Réponses:


Exécutez la commande suivante pour récupérer votre empreinte digitale de clé SSH (-l signifie "liste" au lieu de créer une nouvelle clé, -f signifie "nom de fichier"):

$ ssh-keygen -lf /path/to/ssh/key

Par exemple, sur ma machine, la commande que j'ai exécutée était (en utilisant la clé publique RSA):

$ ssh-keygen -lf ~/.ssh/id_rsa.pub
2048 00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff /Users/username/.ssh/id_rsa.pub (RSA)

Avec les nouvelles versions de ssh-keygen, exécutez ssh-keygen -E md5 -lf <fileName> si vous voulez le même format que vieux (merci Lloyd Dewolf)

Info bonus:

ssh-keygen -lf travaille également sur known_hosts et authorized_keys des dossiers.

Trouvez le plus public sur un système Linux / Unix / OSX avec find /etc/ssh /home/*/.ssh /Users/*/.ssh -name '*.pub' -o -name 'authorized_keys' -o -name 'known_hosts' (Si vous voulez voir à l'intérieur des répertoires d'autres utilisateurs, vous devrez être root ou sudo.)

le ssh-add -l est très similaire mais répertorie les empreintes digitales des clés ajoutées à votre agent. (Les utilisateurs OSX prennent note que magic ssh sans mot de passe via Keychain est différent de l'utilisation de ssh-agent.)


955
2018-03-07 18:54



Les nouvelles commandes SSH listeront les empreintes digitales SHA256 Clé.

Par exemple:

ssh-keygen -lf ~/.ssh/id_rsa.pub 
1024 SHA256:19n6fkdz0qqmowiBy6XEaA87EuG/jgWUr44ZSBhJl6Y (DSA)

Si vous avez besoin de le comparer à une ancienne empreinte, vous devez également spécifier md5 fonction de hachage des empreintes digitales.

ssh-keygen -E md5 -lf ~/.ssh/id_rsa.pub
2048 MD5:4d:5b:97:19:8c:fe:06:f0:29:e7:f5:96:77:cb:3c:71 (DSA)

Aussi disponible: -E sha1


521
2017-08-21 00:15



Pour voir votre clé sur Ubuntu, entrez simplement la commande suivante sur votre terminal:

ssh-add -l

Vous obtiendrez une sortie comme celle-ci: 2568 0j:20:4b:88:a7:9t:wd:19:f0:d4:4y:9g:27:cf:97:23 yourName @ ubuntu (RSA)

Si toutefois vous obtenez une erreur comme; Could not open a connection to your authentication agent.
Cela signifie que ssh-agent ne fonctionne pas. Vous pouvez le démarrer / l'exécuter avec:         ssh-agent bash (merci à @Richard dans les commentaires) puis re-course ssh-add -l


23
2017-09-11 09:35



Une paire de clés (les clés privées et publiques) aura la même empreinte digitale; Dans le cas où vous ne pouvez pas vous souvenir de la clé privée qui appartient à quelle clé publique, recherchez la correspondance en comparant leurs empreintes digitales. La réponse la plus votée par Marvin Vinto fournit l'empreinte d'un Publique Fichier clé ssh. L'empreinte digitale du correspondant privé La clé ssh peut également être interrogée, mais elle nécessite une série d'étapes plus longue, comme indiqué ci-dessous.

1) Chargez l'agent SSH, si ce n'est pas déjà fait. Le plus simple est d'invoquer

$ ssh-agent bash

ou

$ ssh-agent tcsh

(ou un autre shell que vous utilisez)

2) Chargez la clé privée que vous voulez tester:

$ ssh-add /path/to/your-ssh-private-key

Vous serez invité à entrer la phrase secrète si la clé est protégée par mot de passe.

3) Maintenant, comme d'autres l'ont dit, tapez

$ ssh-add -l
1024 fd:bc:8a:81:58:8f:2c:78:86:a2:cf:02:40:7d:9d:3c you@yourhost (DSA)

fd:bc:... est l'empreinte digitale que vous recherchez. S'il y a plusieurs clés, plusieurs lignes seront imprimées et la dernière ligne contiendra l'empreinte de la dernière clé chargée.

4) Si vous voulez arrêter l'agent (c'est-à-dire si vous avez invoqué l'étape 1 ci-dessus), tapez simplement exit sur le shell et vous serez de retour sur le shell avant le chargement de l'agent ssh.

Je n'ajoute pas de nouvelles informations, mais j'espère que cette réponse est claire pour les utilisateurs de tous les niveaux.


13
2017-11-21 22:54



Le moyen le plus rapide si vos clés sont dans l'agent SSH:

$ ssh-add -L | ssh-keygen -E md5 -lf /dev/stdin

Chaque clé de l'agent sera imprimée comme suit:

4096 MD5:8f:c9:dc:40:ec:9e:dc:65:74:f7:20:c1:29:d1:e8:5a /Users/cmcginty/.ssh/id_rsa (RSA)

7
2017-09-28 19:08



Reproduire du contenu à partir d'AWS forums ici, parce que je l'ai trouvé utile dans mon cas d'utilisation - je voulais vérifier lesquelles de mes clés correspondaient à celles que j'avais importées dans AWS

openssl pkey -in ~/.ssh/ec2/primary.pem -pubout -outform DER | openssl md5 -c

Où: - primary.pem est la clé privée à vérifier


7
2018-02-15 11:31



$ ssh-add -l 

fonctionnera également sur Mac OSX 10.8-10.10


6
2018-06-12 16:54



C'est la fonction shell que j'utilise pour obtenir mon empreinte digitale ssh pour créer des gouttelettes digitalocéan:

fingerprint() {
    pubkeypath="$1"
    ssh-keygen -E md5 -lf "$pubkeypath" | awk '{ print $2 }' | cut -c 5-
}

Mettez-le dans votre ~/.bashrc, source, puis vous pouvez obtenir l'empreinte digitale comme suit:

$ fingerprint ~/.ssh/id_rsa.pub
d2:47:0a:87:30:a0:c0:df:6b:42:19:55:b4:f3:09:b9

6
2017-08-20 18:28