还有其他类似的问题,但我不觉得它回答了我的问题。从Java servlet我需要能够ssh到我公司网络上的任何服务器并动态处理这个未知的密钥异常,然后发出命令来获取并显示服务器的当前状态。
我看到了一个使用JSch session.setFingerprint的建议,但它必须已经改变或者其他东西,因为据我所知,它不存在。我正在使用Netbeans。
这是我的代码:
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
String url = "validurl";
String user = "validuser";
String password = "validpassword";
printer.println ("HelloWorld!");
JSch ssh = new JSch();
ChannelShell ch = null;
Session session = null;
try {
session = ssh.getSession(user, "serverIP", 22);
session.setPassword(password);
session.connect();
ch = (ChannelShell)session.openChannel("shell");
ch.connect();
}
catch (JSchException e) {
System.out.println ("Exception: " + e);
}
catch (Exception e) {
System.out.println ("Exception: " + e);
}
谢谢! 德文