`
zyz611
  • 浏览: 95242 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

sftp

    博客分类:
  • java
 
阅读更多
public static SshServer getSsd(String shareDir)
    {
        SshServer sshd = SshServer.setUpDefaultServer();
        sshd.setPort(9022);
        sshd.setFileSystemFactory(new SftpFileSystem(shareDir));
        //NO PASSWORDsshd.setPasswordAuthenticator
        sshd.setPasswordAuthenticator(new MyPasswordAuthenticator());
        sshd.setKeyPairProvider(new SimpleGeneratorHostKeyProvider(
                "hostkey.ser"));
       
        List<NamedFactory<UserAuth>> userAuthFactories = new ArrayList<NamedFactory<UserAuth>>();
        //NO PASSWORD UserAuthNone.Factory()
        userAuthFactories.add(new UserAuthPassword.Factory());
        sshd.setUserAuthFactories(userAuthFactories);
       
        sshd.setCommandFactory(new ScpCommandFactory());
       
        List<NamedFactory<Command>> namedFactoryList = new ArrayList<NamedFactory<Command>>();
       
        namedFactoryList.add(new SftpSubsystem.Factory());
        sshd.setSubsystemFactories(namedFactoryList);
       
        return sshd;
    }

  getSsd(shareDir).start();



public class DircotorSftpHome implements FileSystemView
{
    private String currDir;
   
    public DircotorSftpHome(String currDir)
    {
        this.currDir = currDir;
    }


    public SshFile getFile(String file) {
        return getFile(currDir, file);
    }

    public SshFile getFile(SshFile baseDir, String file) {
        return getFile(baseDir.getAbsolutePath(), file);
    }

    protected SshFile getFile(String dir, String file) {
        // get actual file object
        String physicalName = NativeSshFile.getPhysicalName("/",
                dir, file, false);
        File fileObj = new File(physicalName);

        // strip the root directory and return
        String userFileName = physicalName.substring("/".length() - 1);
        return new SftpFile(physicalName, fileObj, "test");
    }



public class SftpFileSystem implements FileSystemFactory
{
   
    private String shareDir;
   
    public SftpFileSystem(String shareDir)
    {
        this.shareDir = shareDir;
    }
   
    @Override
    public FileSystemView createFileSystemView(Session session)
            throws IOException
    {
      
       
        return new DircotorSftpHome(shareDir);
    }
   
}


public class MyPasswordAuthenticator implements PasswordAuthenticator
{
   
    private Log logger = LogFactory.getInstance(this);
   
    @SuppressWarnings("deprecation")
    @Override
    public boolean authenticate(String username, String password,
            ServerSession session)
    {

        return false;
    }

  
}
分享到:
评论

相关推荐

    SFTP.rar_c sftp_mfc sftp_sftp_sftp mFC_socket实现sftp

    标题中的"SFTP.rar_c sftp_mfc sftp_sftp_sftp mFC_socket实现sftp"表明这个压缩包包含了关于使用MFC(Microsoft Foundation Classes)框架和Socket编程来实现Secure File Transfer Protocol(SFTP)的代码示例。...

    mini-sftp-server.x64 迷你sftp免安装

    迷你SFTP服务器是一款轻量级的SFTP(SSH文件传输协议)服务器软件,尤其适合在无需复杂配置的情况下快速建立本地SFTP服务。标题中的“mini-sftp-server.x64”表明这是一款专为64位操作系统设计的版本,提供便捷的...

    基于SSH协议的sftp协议

    基于SSH协议的SFTP协议详解 SFTP(Secure File Transfer Protocol,安全文件传输协议)是一种安全的文件传输协议,基于SSH(Secure Shell,安全外壳)协议实现。SFTP协议提供了一个安全的文件传输机制,用于在不同...

    SFTP上传下载 MFC VS2010

    在IT行业中,SFTP(Secure File Transfer Protocol)是一种基于SSH(Secure Shell)的安全文件传输协议,用于在不同网络之间安全地传输文件。本项目“SFTP上传下载 MFC VS2010”专注于利用MFC(Microsoft Foundation...

    C#sftp实现对文件的操作

    本篇文章将深入探讨如何使用C#实现在SFTP协议下进行文件的操作,包括连接SFTP服务器、添加、删除和移动文件。 首先,要连接到SFTP服务器,我们需要一个支持SFTP的库。在C#中,常用的库有SharpSSH和SSH.NET。这两个...

    Java sftp上传文件夹demo

    在Java编程中,SFTP(Secure File Transfer Protocol)是一种安全的文件传输协议,常用于在本地系统和远程服务器之间安全地传输文件。JSch(Java Secure Channel)是一个开放源码的Java库,它实现了SSH2协议,包括...

    SftpDrive1.7.9 自带注册码

    它将FTP(文件传输协议)和SFTP(安全文件传输协议)服务集成到Windows资源管理器中,让用户可以像操作本地硬盘一样方便地访问远程服务器上的文件。这个软件的核心价值在于其高度的易用性和安全性,使得在处理远程...

    SFTP.rar_SFTP客户端_c sftp_sftp c++_sftp 客户端_visual c

    sftp 客户端服务程序 基于 sftp通讯协议~~

    Linux下的SFTP C语言客户端,包括SFTP下载、上传、list目录和创建目录

    在IT领域,尤其是在系统编程和网络通信中,C语言因其高效和灵活性而广泛用于实现各种功能,例如在Linux环境中创建SFTP(Secure File Transfer Protocol)客户端。SFTP是一种基于SSH的安全文件传输协议,用于在不安全...

    SFTP源码 C语言 带案例

    SFTP(Secure File Transfer Protocol)是一种安全的文件传输协议,常用于在SSH(Secure Shell)协议下进行文件传输。它提供了比传统的FTP更安全的环境,因为所有的数据传输都经过加密,防止了中间人攻击和其他安全...

    java sftp文件上传

    Java SFTP文件上传是通过Java编程语言实现与Secure File Transfer Protocol(SFTP)服务器进行交互,将本地文件安全地传输到远程服务器的过程。SFTP是一种基于SSH的安全文件传输协议,它提供了在不安全网络上安全...

    sharpSSH c#实现SFTP的东东

    标题中的"sharpSSH c#实现SFTP的东东"指的是使用C#编程语言实现的SFTP(Secure File Transfer Protocol)客户端库,名为SharpSSH。SharpSSH是一个开源项目,专为.NET开发者提供,允许他们在C#应用程序中实现SFTP功能...

    JAVA SFTP文件上传、下载及批量下载实例

    JAVA SFTP文件上传、下载及批量下载实例 在本篇文章中,我们将详细介绍JAVA SFTP文件上传、下载及批量下载的实例,包括相关的概念、API介绍、代码实现等方面的内容。 首先,我们需要了解什么是SFTP?SFTP(Secure ...

    java实现sftp操作工具类

    1分让你得到sftp常用操作工具,工具实现如下操作: 1)得到当前工作目录地址 2)改变目录为配置的远程目录 3)取文件目录列表 4)取文件列表 5)下载文件 6)复制文件 7)删除文件 8)目录是否存在,文件是否存在 9)移动文件 ...

    Nginx代理SFTP和TCP协议通讯测试.docx

    Nginx 代理 SFTP 和 TCP 通讯测试 本文档测试 Nginx 代理 SFTP 和 TCP 协议通讯的结果,不包括 Nginx 的安装过程。下面详细介绍本文档中涉及到的知识点: 1. Nginx 代理 SFTP: Nginx 可以作为 SFTP 代理服务器,...

    idea配置SFTP实现一键更新服务器

    ### IDEA配置SFTP实现一键更新服务器 在现代软件开发过程中,高效、便捷地进行服务器部署与更新至关重要。本文将详细介绍如何利用IntelliJ IDEA(以下简称IDEA)中的SFTP插件,实现一键更新服务器的功能。这种方法...

    Delphi 通过SFTP连接Linux服务器

    本文将深入探讨如何使用Delphi通过SFTP(Secure File Transfer Protocol,安全文件传输协议)来连接Linux服务器,实现数据的安全、高效对接。 SFTP是一种基于SSH(Secure Shell)的安全文件传输协议,它提供了对...

    SFTP上传下载文件工具

    SFTP(Secure File Transfer Protocol),安全文件传输协议,是一种基于SSH(Secure Shell)的安全协议,用于在不同网络之间安全地传输文件。SFTP提供了一种加密所有传输数据的方法,包括用户名、密码和传输中的文件...

    Centos7.x部署SFTP服务+和ssh不同端口访问

    SFTP(Secure File Transfer Protocol)是FTP协议的安全版本,它基于SSH(Secure Shell)协议,提供安全的文件传输。在CentOS 7.x上部署SFTP服务,可以为用户提供安全的数据交换环境。同时,为了提高系统的安全性,...

    SFTP 源码浅析1

    《SFTP 源码分析:理解客户端与服务器交互机制》 SFTP(Secure File Transfer Protocol)是一种基于SSH协议的安全文件传输协议。本文主要探讨SFTP客户端的源码实现,特别是其整体框架和命令调度机制。 1. **整体...

Global site tag (gtag.js) - Google Analytics