Я установил OpenSSH в Windows.
Я могу успешно подключиться к своему удаленному серверу через ssh с помощью Putty с этой машины Windows.
Но при открытии PowerShell и попытке
ssh my_user@1.2.3.4
У меня ошибка:
debug3: send packet: type 5
Corrupted MAC on input.
ssh_dispatch_run_fatal: Connection to 1.2.3.4 port 22: message authentication code incorrect
Когда я смотрю на свой удаленный сервер в защищенных журналах, я вижу:
Dec 7 03:20:22 allo-01 sshd[10102]: Connection from 4.3.2.1 port 49869 on 1.2.3.4 port 22
Dec 7 03:20:23 allo-01 sshd[10102]: Connection reset by 4.3.2.1 port 49869 [preauth]
Вы знаете, что случилось? Почему моя команда ssh из openssl в Windows ведет себя иначе, чем PuTTY?
Спасибо, Рауль
Ответ Рауля на свой вопрос правильный. Я столкнулся с той же проблемой и добавил правильное имя алгоритма после -m
вариант работает (в моем случае вариант был -m hmac-sha2-512
для подключения из PowerShell к машине под управлением Ubuntu 18.04).
Я не был уверен, какой алгоритм использовать, но вы можете перечислить все доступные, запустив:
ssh -Q mac
Я выбрал один случайным образом, попробовал, и удаленный сервер вернулся, сказав, что алгоритм не поддерживается, но он легко сказал мне, какой из них, чтобы я мог изменить свою команду. Используя эту команду, я мог затем подключиться к удаленному компьютеру по ssh:
ssh -m hmac-sha2-512 <user_name>@<remote_address>
Хорошо,
Corrupted MAC on input.
позвольте мне подумать о том, что что-то не так с моей сетевой картой.
Действительно, в мире ssh MAC означает «код аутентификации сообщения».
Итак, я решил свою проблему, добавив к моей команде ssh параметр -m с приемлемым алгоритмом удаленного управления.