我正在尝试连接到无法通过 JSch 管理的远程设备,尽管我可以使用具有相同凭据的 WinSCP 客户端进行连接。
该应用程序是一个基于 J2EE 的企业应用程序,它在 Windows 服务器上的 JBoss AS 7.1.1 上运行,我正在尝试从 Quartz 作业连接 SFTP 服务器。我用来验证 SFTP 登录的代码如下。
try {
Session session = jsch.getSession("username", "host", 22);
session.setConfig("StrictHostKeyChecking", "no");
session.setPassword("password");
session.connect();
Channel channel = session.openChannel("sftp");
ChannelSftp channelSftp = (ChannelSftp) channel;
channel.connect();
session.disconnect();
channelSftp.disconnect();
} catch (JSchException e) {
log("Cannot make connection to FTP server ");
e.printStackTrace();
}
我正在
com.jcraft.jsch.JSchException:java.net.ConnectException:连接被拒绝:连接
session.connect() 处出现异常;
我使用的是 0.1.50 版本的 JSch
当我在开发环境中运行这段代码时,出现了另一个不一致的情况;我可以使用 SFTP 连接到服务器。
您能帮我查明此行为的可能原因吗?
该问题是由于网络拓扑和通信双方的权限造成的。如果您遇到同样的问题,请考虑这些问题。
我也遇到了类似的问题,如果您能给我一些进一步的指导来解决问题,我将不胜感激