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

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和用户名后会弹出输入密码框,问题得以解决。
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程