Key exchange was not finished, connection is closed.解决办法

avatar
作者
猴君
阅读量:0

错误


利用java连接Linux服务器中碰到错误:Key exchange was not finished, connection is closed.,导致服务器的连接失败,报错如下
在这里插入图片描述

原因


ssh中的key交换算法不兼容导致

解决办法


修改配置文件

vi /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 

重启服务

systemctl restart sshd 

启动报错


如果重新启动ssh出现错误Start operation timed out. Terminating.Failed to start openbsd secure shell server,可以尝试如下解决办法

关闭由systemctl控制的ssh启动

systemctl stop ssh.service  

删除ssh的服务配置文件

rm /lib/systemd/system/ssh.service 

重载systemctlssh服务

systemctl daemon-reload systemctl start ssh.service 

祝大家好运

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!