我用下面的代码连接到ssh服务器。
JSch jsch = new JSch();
Session session = jsch.getSession("username", "ip", port);
Properties config = new Properties();
config.put("kex", "diffie-hellman-group1-sha1");
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.setPassword("password");
session.connect(5000); // Exception raises here
异常如下所示。
com.jcraft.jsch.JSchException: Session.connect: java.io.IOException: End of IO Stream Read
由于我没有得到日志(由于应用程序限制),我通过WireShark捕获了会话,并且它显示了在密钥交换期间ssh服务器发送的重置请求。 附上相同的屏幕截图。
在上图中,xx.xx.xx.29是我的机器,xx.xx.xx.51是ssh服务器ip
我在这里找不到其他线程中的任何解决方案。请帮帮我。
答案 0 :(得分:0)
在线检查kex以获取许多答案。 会话。 SetConfig(kex","" diffie-hellman group1-sha1");