首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >密钥交换未完成,连接与ganymed-ssh-2和Confd关闭。

密钥交换未完成,连接与ganymed-ssh-2和Confd关闭。
EN

Stack Overflow用户
提问于 2022-06-23 11:34:22
回答 1查看 530关注 0票数 0

我正在使用JNC1.0&Ganymed-SH-2 v262通过SSH建立一个Netconf会话到Cisco节点,并得到以下错误。可能是什么原因?

java.io.IOException:密钥交换未完成,连接关闭。在ch.ethz.ssh2.transport.KexManager.getOrWaitForConnectionInfo(KexManager.java:75) at ch.ethz.ssh2.transport.TransportManager.getConnectionInfo(TransportManager.java:169) at ch.ethz.ssh2.Connection.connect(Connection.java:759) at com.tailf.jnc.SSHConnection.(未知来源)在com.tailf.jnc.Device.connect(未知来源)在com.tailf.jnc.Device.connect(未知来源).java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)由: java.io.IOException:无法协商,提案不匹配。在ch.ethz.ssh2.transport.ClientKexManager.handleMessage(ClientKexManager.java:123) at ch.ethz.ssh2.transport.TransportManager.receiveLoop(TransportManager.java:572) at ch.ethz.ssh2.transport.TransportManager$1.run(TransportManager.java:261) at java.base/java.lang.Thread.run(Thread.java:833)

EN

回答 1

Stack Overflow用户

发布于 2022-06-23 12:01:44

代码语言:javascript
复制
java.io.IOException: Key exchange was not finished, connection is closed.

...
...

Caused by: java.io.IOException: Cannot negotiate, proposals do not match.

这意味着客户端上支持的密钥交换算法与服务器支持的密钥交换算法之间存在不匹配。

我建议将ganymed-ssh-2更新为v263。显然,最新版本增加了对以下kex算法的支持:

代码语言:javascript
复制
diffie-hellman-group14-sha256
diffie-hellman-group16-sha512
diffie-hellman-group18-sha512

您可以通过在终端上使用ssh的调试标志来检查服务器支持什么:

代码语言:javascript
复制
ssh -vvv user@host
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72729465

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档