Здається, що opensh змінив спосіб відображення ключових відбитків пальців.
Я намагаюся перейти з клієнтської машини на сервер:
- клієнт: ubuntu 14.04 під керуванням OpenSSH 6.6.1
- сервер: FreeBSD під керуванням OpenSSH 7.2p2.
Клієнт повідомляє хеш md5 ключа сервера у вигляді послідовності 16 пар шістнадцяткових цифр, наприклад:
a7:b1:3e:3d:84:24:a2:5a:91:5f:6f:e9:cf:dd:2b:6a
Сервер за замовчуванням використовує хеш sha256, але завдяки цій відповіді я можу змусити його надати хеш sha1, запустивши:
[root@host /etc/ssh]# ssh-keygen -l -E sha1 -f ssh_host_ecdsa_key.pub
Я хочу, щоб результат виглядав так:
a7:b1:3e:3d:84:24:a2:5a:91:5f:6f:e9:cf:dd:2b:6a
але натомість я отримую це:
256 SHA1:KIh0ejR4O+RqrSq7JdGAASddRfI root@host.local (ECDSA)
Мені це здається, що замість шістнадцяткових цифр тепер відображається закодована версія base64, відбитка пальців.
Як я можу отримати контрольну суму ключа сервера у тому самому форматі, що і повідомлення про те, що повідомляється (старшим) клієнтом (двократні шістнадцяткові цифри, двошаровий хеш), щоб перевірити, чи вони однакові?
EDIT: Стара версія SSH дає контрольну суму md5 , а не контрольну суму sha1, як я помилково думав. Використання цієї контрольної суми (як повинна бути прийнята відповідь) у параметрі -E дає бажаний вихід.