我正在使用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)
发布于 2022-06-23 12:01:44
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算法的支持:
diffie-hellman-group14-sha256
diffie-hellman-group16-sha512
diffie-hellman-group18-sha512您可以通过在终端上使用ssh的调试标志来检查服务器支持什么:
ssh -vvv user@hosthttps://stackoverflow.com/questions/72729465
复制相似问题