J'essaie de trouver un script pour décrypter (hacher) les noms d'hôte ssh dans le fichier known_hosts en passant une liste des noms d'hôte .
Donc, pour faire exactement l'inverse de :
ssh-keygen -H -f known_hosts
Ou aussi, pour faire la même chose si la configuration ssh HashKnownHosts est définie sur No:
ssh-keygen -R know-host.com -f known_hosts
ssh-keyscan -H know-host.com >> known_hosts
Mais sans retélécharger la clé d'hôte (causée par ssh-keyscan).
Quelque chose comme:
ssh-keygen --decrypt -f known_hosts --hostnames hostnames.txt
Où hostnames.txt contient une liste de noms d'hôtes.
ssh
encryption
hostname
ssh-keygen
Xorax
la source
la source
known_hosts
. Que déchiffrer?Réponses:
Les lignes du
known_hosts
fichier ne sont pas chiffrées, elles sont hachées. Vous ne pouvez pas les déchiffrer, car ils ne sont pas chiffrés. Vous ne pouvez pas les "déchaîner", car c'est à cela que sert un hachage - étant donné le hachage, il est impossible¹ de découvrir la chaîne d'origine. La seule façon de «détacher» est de deviner la chaîne d'origine et de vérifier votre supposition.Si vous avez une liste de noms d'hôte, vous pouvez les transmettre
ssh-keygen -F
et les remplacer par le nom d'hôte.¹ Dans un sens pratique, c'est-à-dire qu'il faudrait à tous les ordinateurs existants aujourd'hui plus longtemps que l'âge actuel de l'univers pour le faire.
la source
La page de manuel ssh-keygen (1) indique pour l'
-F hostname
option:Cela semble être ce que vous voulez.
la source
known_hosts
fichier parsed
.