При настройке возможности SSH между двумя машинами Linux я столкнулся с:
The authenticity of host 'x.x.x.x (y.y.y.y)' can't be established.
ECDSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Are you sure you want to continue connecting (yes/no)?
Я использую следующую команду (в субъекте хоста (сервере)), чтобы убедиться, что указанный отпечаток правильный:
ssh-keygen -l -f /etc/ssh/ssh_host_ecdsa_key.pub
Однако при настройке возможности SSH с клиента Linux SSH на SSH-сервер Windows 10, столкнувшись с той же проблемой, как мне получить указанный отпечаток ключа ECDSA с указанного SSH-сервера Windows 10?
2 ответа
SSH-сервер Windows 10 также является OpenSSH и включает те же команды. Он хранит ключи хоста в C:ProgramDatassh.
ssh-keygen -lf C:/ProgramData/ssh/ssh_host_ecdsa_key.pub
ssh-keyscan localhost | ssh-keygen -lf -
Сторонние серверы SSH могут иметь свои собственные команды, например Bitvise WinSSHD имеет графический интерфейс для управления ключами хоста, но ssh-keyscan будет работать и с ними.
Оказывается, я использую старую версию SSH (6.7). Чтобы получить отпечаток ключа ECDSA в том же формате, что и в OP, требуется следующая команда, выполняемая с правами администратора на хосте Windows 10:
ssh-keygen -l -E md5 -f C:/ProgramData/ssh/ssh_host_ecdsa_key.pub
Я смог сколотить эту команду благодаря информации, полученной от user1686.
