解决ssh secure shell连接出现Server responded "Algorithm negotiation failed"
当把服务器的openssh升级到7.4p1的之后,几个使用windows系统的开发跑来告诉我说无法连接服务器,我在自己的机器上试了下,是可以连上的,去他的工位上一看,原来是ssh secure shell连接linux服务器弹出Server responded "Algorithm negotiation failed" 错误,如下图
好吧,网上搜了下,说的是新版本的openssh支持新加密方式,而客户端只支持旧的加密方式,所以要添加旧的加密方式来让客户端支持.
解决办法:
vi /etc/ssh/sshd_config
Ciphers aes128-cbc,aes192-cbc,aes256-cbc,aes128-ctr,aes192-ctr,aes256-ctr,3des-cbc,arcfour128,arcfour256,arcfour,blowfish-cbc,cast128-cbc MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-sha1-96,hmac-md5-96 KexAlgorithms diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group1-sha1,curve25519-sha256@libssh.org
添加上上面三行,然后重启sshd就可以了.
sshd为了安全弃用了旧的加密算法,应该是客户端来更新,而非又改回去。