Я пытаюсь найти скрипт для дешифрования (unhash) имен хостов ssh в файле known_hosts , передавая список хост-хостов .
Итак, чтобы сделать в точности наоборот :
ssh-keygen -H -f known_hosts
Или также, чтобы сделать то же самое, если ssh config HashKnownHosts установлен в No:
ssh-keygen -R know-host.com -f known_hosts
ssh-keyscan -H know-host.com >> known_hosts
Но без повторной загрузки ключа хоста (вызвано ssh-keyscan).
Что-то вроде:
ssh-keygen --decrypt -f known_hosts --hostnames hostnames.txt
Где hostnames.txt содержит список имен хостов.
ssh
encryption
hostname
ssh-keygen
Xorax
источник
источник
known_hosts
. Что расшифровывать?Ответы:
Строки в
known_hosts
файле не шифруются, они хешируются. Вы не можете расшифровать их, потому что они не зашифрованы. Вы не можете «разархивировать» их, потому что в этом весь хэш - учитывая, что это невозможно, - обнаружить исходную строку. Единственный способ «разомкнуть» - угадать исходную строку и проверить правильность вашего предположения.Если у вас есть список имен хостов, вы можете передать их
ssh-keygen -F
и заменить на имя хоста.¹ В практическом смысле, т. Е. Все компьютеры, существующие сегодня, потребуют больше времени, чем нынешний век вселенной, чтобы сделать это.
источник
Справочная страница ssh-keygen (1) говорит об этом
-F hostname
:Кажется, это то, что вы хотите.
источник
known_hosts
файле наsed
.