在使用SSH Secure Shell Client(SSH client)远程连接Linux服务器时,确保用户名、密码和端口都没问题的情况下会出现报错:

报错“Algorithm negotiation failed“

Server responded "Algorithm negotiation failed.".
 Key exchange with the remote host failed. This can happen for example if the remote host computer does not support the selected algorithms.

该报错意为:服务器响应"算法协商失败"。与远程主机的密钥交换失败。这种情况可能发生,例如,如果远程主机计算机不支持所选的算法。

说人话就是:当前SSH Secure Shell Client(SSH client)不匹配服务器的加密算法。

该如何解决?

方法:既然不匹配,那就更改服务器配置以适配SSH Secure Shell Client(SSH client)。可分为三步走:

1.打开Linux终端,输入:

sudo vi /etc/ssh/sshd_config

2. 默认来到文件末尾,追加以下配置:(追加完后可按ESC+“:wq”保存并退出)

KexAlgorithms diffie-hellman-group1-sha1,diffie-hellman-group14-sha1
Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,aes192-cbc,aes256-cbc
MACs hmac-sha2-256,hmac-sha2-512,hmac-sha1

3. 重启ssh

sudo systemctl restart ssh

完成这三个重要步骤后,回到SSH Secure Shell Client(SSH client),输入正确IP和用户名后会弹出输入密码框,问题得以解决。

点赞(0)

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

Dotcpp在线编译      (登录可减少运行等待时间)