~ / .ssh / authorized_keys [2] contient la liste des clés publiques.
Malheureusement, chaque clé publique ne spécifie pas la force de la clé (nombre de bits).
Existe-t-il un utilitaire qui peut traiter ce fichier ligne par ligne et afficher la force de la clé?
J'ai vérifié les pages de manuel ssh-keygen
, mais il semble que cela ne fonctionnerait qu'avec des clés privées.
De plus, existe-t-il un outil qui produirait le hachage sha1 de la même manière qu'il est affiché dans l' pageant
outil Putty?
Le format que je recherche:
Key Algorithm Strength Hash Comment
ssh-rsa 2048 00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff user1@host1
ssh-rsa 2048 11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff:11 user2@host2
ssh-keygen
avec le fichier entier. Voir ma réponse ci-dessous .Réponses:
ssh-keygen peut faire le cœur du travail (générer une empreinte digitale à partir d'une clé publique), mais il ne traitera pas automatiquement une liste de plusieurs clés comme on le trouve généralement dans un
authorized_keys
fichier.Voici un script qui divise les clés, les alimente à ssh-keygen et produit la table que vous souhaitez:
la source
tmp="$(mktemp -t fingerprint-authkeys)"
doit être changé pourtmp="$(mktemp -t fingerprint-authkeys.XXX)"
mktemp(1)
besoin xs: FreeBSD , Mac OS X . Mais, les ajouter ne nuira pas au comportement de ceux qui n'en ont pas besoin (ils se retrouvent juste avec les X avant le suffixe aléatoire)./home/steve/.scripts/key-strength: line 36: $1: unbound variable
-l
option est vraiment ce que je cherchais! Il est toujours incroyable que vous ne puissiez rien diriger vers ssh-keygen etMUST
avoir un fichier sur le disque.ssh-keygen
avec le fichier entier. Voir ma réponse ci-dessous .ssh-keygen
dans openssh-7.2 (actuellement dans Fedora et Ubuntu Xenial au moins) prend en charge la lecture de plusieurs clés à partir d'un seul fichier. Donc courir simplementdonne la sortie souhaitée.
la source
Si vous avez zsh, vous pouvez le faire en une ligne:
la source
extrapoler à partir de la solution zsh une solution bash
presque ... Cela devrait fonctionner, mais ssh-keygen ne semble pas aimer lire directement à partir du fd généré. Utiliser un fichier temporaire pour la redirection <(, ça marche alors. Pourquoi?
bien sûr, alors vous pouvez plus facilement écrire ceci et être heureux
la source
Script pour lister toutes les empreintes digitales du
authorized_keys
fichier, créé par saravana:la source