Java SFTP 服务器库?

标签 java sftp

是否有 Java 库可用于实现 SFTP服务器?

我正在尝试通过 SFTP 接收文件,但我似乎找不到任何 SFTP 服务器的实现。我找到了 FTP/SFTP/FTPS client 库和 FTP/FTPS 服务器库,但没有找到 SFTP 服务器。

为了澄清,我正在尝试通过 SFTP接收文件。不是从我的应用程序“获取”或“放置”文件到另一个现有服务器。

现在我的应用程序让用户连接到本地 linux SFTP 服务器,删除文件,然后我的应用程序轮询目录,但我觉得这是一个糟糕的实现;我讨厌“轮询”目录的想法,但不幸的是他们必须使用 SFTP。有什么建议吗?

最佳答案

如何使用 Apache Mina SSHD 设置 SFTP 服务器:

public void setupSftpServer(){
    SshServer sshd = SshServer.setUpDefaultServer();
    sshd.setPort(22);
    sshd.setKeyPairProvider(new SimpleGeneratorHostKeyProvider("hostkey.ser"));

    List<NamedFactory<UserAuth>> userAuthFactories = new ArrayList<NamedFactory<UserAuth>>();
    userAuthFactories.add(new UserAuthNone.Factory());
    sshd.setUserAuthFactories(userAuthFactories);

    sshd.setCommandFactory(new ScpCommandFactory());

    List<NamedFactory<Command>> namedFactoryList = new ArrayList<NamedFactory<Command>>();
    namedFactoryList.add(new SftpSubsystem.Factory());
    sshd.setSubsystemFactories(namedFactoryList);

    try {
        sshd.start();
    } catch (Exception e) {
        e.printStackTrace();
    }
}

仅此而已。

关于Java SFTP 服务器库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3076443/

相关文章:

java - 从另一个android项目调用

java - 将 OBJ 文件中的四边形转换为三角形?

java - IKVMC,单声道 : ClassCastException while deserialization

java - 从接口(interface)引用获取具体的类实现

java - Domino 中的 SFTP/SSH Java 代理

java - 使用 Java FTP 客户端从 ColdFusion 9 保护 FTP

java - 将 Clob 转换为字符串

linux - 如何从双跳 SFTP 下载?

shell - cd命令失败时如何退出SFTP

java - SFTP 无法处理名称包含星号的文件