На днях занимался переустановкой операционной системы на одном из рабочих компьютеров. Поставил последнюю версию Fedora и столкнулся с тем, что при попытке подключиться к нему с рабочей станции на Windows по SSH выдается ошибка в Putty с текстом: «Disconnected: Server protocol violation: unexpected ssh2 msg unimplemented packet». Что примечательно, с другого ПК под Linux с помощью штатного клиента к этому компьютеру подцепляюсь без проблем. На форумах главный совет в этом случае — обновить версию клиента. Не помогло! Оказалось всё дело в кексе!
Виновником появления ошибки стал Kex — Key Echange Algorithm — алгоритм обмена ключами. В целях повышения безопасности он был изменён. Теперь нам нужно внести соответствующие изменения в параметры Putty.
Открываем раздел Connection -> SSH -> Kex.
Далее нужно в списке выбора алгоритма выбрать строчку Diffie-Hellman group 14, а затем, с помощью кнопки «Up» поднять её вверх, до первого пункта. После этого ошибка ssh2 msg unimplemented packetсоединение должна исчезнуть и подключение пройдёт без проблем.
Здравствуйте XasaH. Тоже балуюсь немного Ubuntu и хочу спросить у вас вот о чем. Поставил server и для удаленного управления на Windows машине хотел поставить Webmin, но не ставиться и просит Perl. Установил Perl, но Webmin не ставиться. Windows машина Win7 64.
А зачем Вам вообще удалённое управление через такую кривую штуку — есть же ssh. И ничего более не нужно!
Было интересно, хотя я мало что понял.
Если кратко — изменились требования к длине ключа в целях повышения безопасности.
XasaH пользовался Webmin т.к. не знаю всех команд и для меня графически проще. Я это нужно было для осуществления NAS на ubunte с возможностью торрент качалки.
Спасибо большое, помогло!
Спасибо помогло при соединении с NIC.RU
На самом деле проблема в том, что SSH демон предлагает использовать алгоритм, который не умеет (выпелен). Предлагаемое решение — достаточно костыльное, это workaround, который заставляет putty не выбирать нереализованный алгоритм. Но грабли в SSH демоне тем не менее остаются, и на них всегда можно будет наступить позже. Правильнее — настроить ключ KexAlgorithms в sshd_config (обычно /etc/ssh/sshd_config) например, как указано тут ssh.com/ssh/sshd_config/ (ищите там KexAlgorithms) но УДАЛИТЕ ОТТУДА всё что связано diffie-hellman-group-exchange-*.
Тогда сервер не будет предлагать этот алгоритм и Putty (или любой другой ssh клиент) его не выберет.
Это при условии, что у Вас есть возможность конфиг у демона редактировать. А если Вы просто клиент.
Благодарю сто раз )))
Спасибо, помогло. Респект ала.