Я запускаю сервер с Debian Linux 3.2.46-1 + deb7u1 с OpenSSH Server 6.0 и защищаю вход с помощью 2048-битного ключа RSA.
Несмотря на то, что подключение к клиенту OpenSSH с другого компьютера завершается успешно, при использовании Putty 0.63 на компьютере под управлением Windows 7 в подключении отклоняется следующее сообщение:
Server refused public-key signature despite accepting key!
Поскольку проблема касается только Putty, я думаю, что вся конфигурация сервера верна. Putty отлично работает при запуске сервера с Debian 2.6.32 и OpenSSH 5.5.
Вот содержание auth.log:
matching key found: file /root/.ssh/authorized_keys, line 2
Oct 8 14:53:43 serverx sshd[28964]: Found matching RSA key: XX:XX
Oct 8 14:53:43 serverx sshd[28964]: debug1: restore_uid: 0/0
Oct 8 14:53:43 serverx sshd[28964]: debug3: mm_answer_keyallowed: key 0x7fb3828774c0 is allowed
Oct 8 14:53:43 serverx sshd[28964]: debug3: mm_request_send entering: type 22
Oct 8 14:53:43 serverx sshd[28964]: debug3: mm_key_verify entering [preauth]
Oct 8 14:53:43 serverx sshd[28964]: debug3: mm_request_send entering: type 23 [preauth]
Oct 8 14:53:43 serverx sshd[28964]: debug3: mm_key_verify: waiting for MONITOR_ANS_KEYVERIFY [preauth]
Oct 8 14:53:43 serverx sshd[28964]: debug3: mm_request_receive_expect entering: type 24 [preauth]
Oct 8 14:53:43 serverx sshd[28964]: debug3: mm_request_receive entering [preauth]
Oct 8 14:53:43 serverx sshd[28964]: debug3: mm_request_receive entering
Oct 8 14:53:43 serverx sshd[28964]: debug3: monitor_read: checking request 23
Oct 8 14:53:43 serverx sshd[28964]: error: hash mismatch
Oct 8 14:53:43 serverx sshd[28964]: debug1: ssh_rsa_verify: signature incorrect
Oct 8 14:53:43 serverx sshd[28964]: debug3: mm_answer_keyverify: key 0x7fb382871f80 signature unverified
Oct 8 14:53:43 serverx sshd[28964]: debug3: mm_request_send entering: type 24
После этого сервер переключается на аутентификацию по паролю, и я могу нормально войти в систему.
Я уже пытался очистить Puttys known_hosts из реестра Windows, хотя я думаю, что ошибка связана с открытым ключом для частного, а не с ключом хоста сервера.
Мой вопрос: кто-нибудь, кто знает, что происходит не так или что изменилось в OpenSSH с 5.5 до 6.0, могло вызвать это? Есть предложения по исправлению?