可以通过WinSCP打开SFTP连接,但不能使用JSch

问题描述 投票:0回答:2

我正在尝试连接到无法通过 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 连接到服务器。

您能帮我查明此行为的可能原因吗?

java jboss7.x sftp jsch
2个回答
0
投票

该问题是由于网络拓扑和通信双方的权限造成的。如果您遇到同样的问题,请考虑这些问题。


0
投票

我也遇到了类似的问题,如果您能给我一些进一步的指导来解决问题,我将不胜感激

© www.soinside.com 2019 - 2024. All rights reserved.