我使用DebianLinux3.2.46-1+ OpenSSH服务器运行服务器,并使用2048位RSA密钥保护登录。
虽然从另一台计算机与OpenSSH客户端连接成功,但当在Windows 7计算机上使用Putty0.63时,该连接将被拒绝,其消息如下:
Server refused public-key signature despite accepting key!
因为这个问题只适用于Putty,所以我认为所有服务器配置都是正确的。Putty在使用Debian2.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
在这种情况发生之后,服务器切换到密码auth,我可以很好地登录。
我已经尝试从Windows中清除Puttys known_hosts,而我认为错误是关于私有密钥的公钥,而不是服务器主机密钥。
我的问题是:如果有人知道出了什么问题,或者OpenSSH从5.5到6.0发生了什么变化,就会导致这种情况吗?有什么解决办法吗?
发布于 2021-11-03 02:23:14
我在Pageant和FileZilla上看到了这种情况,升级后问题消失了。
https://serverfault.com/questions/545061
复制相似问题