ssh отказывается от соединения с сообщением «no hostkey alg»

10

Мои SSH-соединения работали хорошо, но с прошлой недели SSH с моего ноутбука на мою плату отказывался от соединения. Я могу установить SSH соединение с платы на ноутбук, но не наоборот. Я пробовал это с моим пользователем и пользователем root и имел ту же проблему.

Мой ноутбук - Ubuntu 12.10, а моя плата - Debian 6.

Вот подробный вывод SSH:

danialbehzadi @ danial-HP: ~ $ ssh -v 192.168.1.2  
OpenSSH_5.2p1, OpenSSL 1.0.1c 10 мая 2012 г.
debug1: чтение данных конфигурации / usr / local / etc / ssh_config
debug1: подключение к порту 192.168.1.2 [192.168.1.2].
debug1: соединение установлено.  
debug1: файл идентификации /home/danialbehzadi/.ssh/identity тип -1  
debug1: файл идентификации /home/danialbehzadi/.ssh/id_rsa тип 1  
debug1: файл идентификации /home/danialbehzadi/.ssh/id_dsa тип -1  
debug1: удаленный протокол версии 2.0, удаленная версия программного обеспечения OpenSSH_6.0p1 Debian-4  
debug1: match: OpenSSH_6.0p1 Debian-4 pat OpenSSH *  
debug1: включение режима совместимости для протокола 2.0  
debug1: строка локальной версии SSH-2.0-OpenSSH_5.2  
debug1: отправлено сообщение SSH2_MSG_KEXINIT  
debug1: SSH2_MSG_KEXINIT получено  
debug1: kex: сервер-> клиент aes128-ctr hmac-md5  
debug1: kex: клиент-> сервер aes128-ctr hmac-md5  
нет hostkey alg
Даниал Бехзади
источник

Ответы:

8

Я сделал новые ключи RSA и DSA на плате, и все прошло нормально:

~# ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
~# ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
Даниал Бехзади
источник
На заметку о том, что когда я пытался подключиться с DropBear SSH (распространенным на Android) к Cygwin's SSH, я получил "нет подходящего algo hostkey". Сервер был настроен на прием ключа и пароля, поэтому он должен был перейти к паролю в случае сбоя ключа. Так что я думаю, что это решение может не работать для некоторых .. По этой ссылке это связано с алгоритмом шифрования, используемым linksysinfo.org/index.php?threads/tomato-ssh.29460, но решение там не упоминалось.
Бароп
1
У нас была такая же проблема с сервером Ubuntu 14.04. После попытки запустить новый экземпляр ssh-сервера в режиме отладки, мы обнаружили, что закрытые ключи на сервере не имели разрешения 0600, после того как мы это исправили и перезапустили сервер, все стало работать нормально.
Ави
-1

[root @ server ~] # ls -la / etc / ssh / ssh_host_ *

-rw-------. 1 root root      668 Jun 25 00:03 /etc/ssh/ssh_host_dsa_key
-rw-r--r--. 1 root root      609 Jun 25 00:03 /etc/ssh/ssh_host_dsa_key.pub
-rw-r-----. 1 root ssh_keys  227 Dec 14  2018 /etc/ssh/ssh_host_ecdsa_key
-rw-r--r--. 1 root root      162 Dec 14  2018 /etc/ssh/ssh_host_ecdsa_key.pub
-rw-r-----. 1 root ssh_keys  387 Dec 14  2018 /etc/ssh/ssh_host_ed25519_key
-rw-r--r--. 1 root root       82 Dec 14  2018 /etc/ssh/ssh_host_ed25519_key.pub
-rw-------. 1 root root      963 Apr 18  2011 /etc/ssh/ssh_host_key
-rw-r--r--. 1 root root      627 Apr 18  2011 /etc/ssh/ssh_host_key.pub
-rw-------. 1 root root     1679 Jun 25 00:02 /etc/ssh/ssh_host_rsa_key
-rw-r--r--. 1 root root      401 Jun 25 00:02 /etc/ssh/ssh_host_rsa_key.pub

убедитесь, что режим файла ssh_host_ * 644 и 600, как это

Самый быстрый
источник