sshd Key exchange was not finished, connection is closed.

代码中使用sshd进行服务器连接,遇见报错:

Key exchange was not finished, connection is closed.

是ssh中的key交换算法不兼容导致,解决方案是在/etc/ssh/sshd_config最后添加如下行内容解决问题:

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

关于KexAlgorithms的配置项详情参考官网:https://www.ssh.com/academy/ssh/sshd_config
核心是diffie-hellman-group1-sha1 是开启兼容算法,但是这个算法比较老,容易被中间人攻击。

修改后重启服务:

service sshd restart
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容