Проверить отпечаток SSH о сбое записи DNS SSHFP

У меня есть сервер Debian Jessie, и я хотел бы проверить SSH HostKey о DNS SSHFP записи . Я предоставляю только алгоритм ed25519 и rsa для подключения к серверу. Я замаскировал полное доменное имя сервера на kronos.example.local.

Я использовал эти команды для генерации отпечатка пальца для алгоритма ed25519

root@kronos:~# ssh-keygen -r kronos.example.local -f /etc/ssh/ssh_host_ed25519_key
kronos.example.local IN SSHFP 4 1 f6291b4afb2b18cb3042e9dc01bd15efca7f5d5e
kronos.example.local IN SSHFP 4 2 7b2e9286d0969618ccb88d954587ac82f2ad471c34d07d25d91f9905b86f152d

, а этот для rsa

root@kronos:~# ssh-keygen -r kronos.example.local -f /etc/ssh/ssh_host_rsa_key
kronos.example.local IN SSHFP 1 1 365f966468f59ed889fb9d94c25f8f6cb858aa7a
kronos.example.local IN SSHFP 1 2 162f0117baae8380427698ba8800bdef36e150e6014f220b568d85445832d050

Я использовал dig для проверки записей на моем клиентском компьютере.

volker@vm23 ~ $ dig SSHFP kronos.example.local
;; ANSWER SECTION:
kronos.example.local.   600 IN  SSHFP   1 2 162F0117BAAE8380427698BA8800BDEF36E150E6014F220B568D8544 5832D050
kronos.example.local.   600 IN  SSHFP   4 2 7B2E9286D0969618CCB88D954587AC82F2AD471C34D07D25D91F9905 B86F152D
kronos.example.local.   600 IN  SSHFP   4 1 F6291B4AFB2B18CB3042E9DC01BD15EFCA7F5D5E
kronos.example.local.   600 IN  SSHFP   1 1 365F966468F59ED889FB9D94C25F8F6CB858AA7A

Запись SSHFP верна, и я добавляю settings StrictHostKeyChecking и VerifyHostKeyDNS в моей конфигурации ssh, чтобы проверить отпечаток ssh о записи SSHFP.

Host                    kronos
Hostname                kronos.example.local
Port                    30
User                    root
Compression             yes        
IdentityFile            ~/.ssh/ssh.key      
PasswordAuthentication  no
PubkeyAuthentication    yes
RSAAuthentication       no
StrictHostKeyChecking   yes
VerifyHostKeyDNS        yes 

Теперь, когда я хочу подключиться к серверу, я получаю сообщение об ошибке, что мой ssh-клиент не может установить соединение из-за неправильного отпечатка пальца?

volker@vm23 ~ $ ssh kronos
No ED25519 host key is known for [kronos.example.local]:30 and you have requested strict checking.
Host key verification failed.

Почему я получаю эту ошибку, я не знаю, что Я ошибаюсь.

РЕДАКТИРОВАТЬ:

Когда я сбрасываю файл known_hosts и снова подключаюсь, я получаю это сообщение с предоставленным отпечатком пальца.

The authenticity of host '[kronos.example.local]:30 ([192.168.2.100]:30)' can't be established.
ED25519 key fingerprint is SHA256:ey6ShtCWlhjMuI2VRYesgvKtRxw00H0l2R+ZBbhvFS0.
1
задан 19 September 2017 в 23:52
1 ответ

StrictHostKeyChecking yes запрещает openssh автоматически добавлять новые HostKeys в файл known_hosts .Вам нужно будет добавить его в known_hosts вручную или установить StrictHostKeyChecking no для вашего первого подключения. Затем вас спросят, хотите ли вы его добавить. Впоследствии вы можете установить его обратно на StrictHostKeyChecking yes .

1
ответ дан 3 December 2019 в 23:31

Теги

Похожие вопросы