精华内容
下载资源
问答
  • jsch的jar包最新版

    2020-10-29 11:15:04
    jsch-0.1.54.jar最新版本的jar包。JSch 是SSH2的一个纯Java实现。它允许你连接到一个sshd 服务器,使用端口转发,X11转发,文件传输等等。你可以将它的功能集成到你自己的 程序中。同时该项目也提供一个J2ME版本用来...
  • jsch依赖包.zip

    2020-09-04 10:02:54
    java使用Jsch组件链接资源上传下载文件 java使用Jsch组件链接资源上传下载文件 依赖jar包jsch-0.1.55.jar
  • jsch源码和jar包.rar

    2020-05-16 11:59:19
    java代码连接ssh服务器,jsch源码和jar包
  • jcraft-jsch.zip

    2020-05-02 22:51:21
    分享两个jcraft-jsch包,版本0.1.24和0.1.53,自己监控linux设备shell用的,官方资源不好下,自己弄了两个分享下
  • 下面小编就为大家分享一篇使用JSCH框架通过跳转机访问其他节点的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • jsch-0.1.53.jar 、jsch-0.1.55.jar两个版本的jar包, 可避免Algorithm negotiation fail异常,下载后解压即可获取
  • jsch jar包

    2018-08-17 09:41:50
    包括jsch-0.1.51.jar jsch-0.1.52.jar jsch-0.1.53.jar三个版本的包
  • 主要介绍了如何用java程序(JSch)运行远程linux主机上的shell脚本,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
  • 主要介绍了详解Java使用Jsch与sftp服务器实现ssh免密登录,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • JSch 是SSH2的一个纯Java实现。它允许你连接到一个sshd 服务器,使用端口转发,X11转发,文件传输等等。你可以将它的功能集成到你自己的 程序中。同时该项目也提供一个J2ME版本用来在手机上直连SSHD服务器
  • 主要介绍了Java中通过jsch来连接远程服务器执行linux命令的相关资料,需要的朋友可以参考下
  • jsch实现sftp文件上传、下载文件,提供jsch jar
  • JSCH免费下载啦

    2018-03-15 10:48:58
    Jsch jar包 下载 SFTP 欢迎是大家下载 jsch-0.1.51.jar
  • jsch-0.1.55.jar

    2019-10-01 15:00:53
    jmeter ssh command依赖jar包,需要放置于apache-jmeter-5.1.1\apache-jmeter-5.1.1\lib目录下。
  • 是使用java使用JSCH进行连接远程服务器的Demo,让更多刚刚接触的同学进行学习。
  • jsch-0.1.53.jar开发包,可以在android和java环境下ssh通信,我只要1分!!不能贪心
  • 示例连接SSH Java 和 JSch 的 SSH 连接示例(Java 安全通道)
  • 可用的jsch-0.1.54.jar

    2018-11-13 14:49:42
    亲自测试,jar可用,jsch-0.1.54.jar 替换后启动服务问题解决。
  • jsch-0.1.54.jar源码包

    2018-10-18 21:24:32
    jsch连接linux的工具包,公司一般用的就是这个jsch-0.1.54.jar包
  • jsch的jar包

    2017-11-07 17:39:05
    SFTP的上传jar包,不经常用到,找到了就放到上边,都用用,csdn强制我要资源分,这么low的东西,,,,哎
  • Jsch

    千次阅读 2019-08-29 19:29:37
    Jsch 一、什么是Jsch Jsch 是SSH2的一个纯Java实现。它允许你连接到一个sshd 服务器,使用端口转发,X11转发,文件传输等等。你可以将它的功能集成到你自己的 程序中。 二、实现原理 1. 根据远程主机的IP...

                                           Jsch


    一、什么是Jsch


           Jsch 是SSH2的一个纯Java实现。它允许你连接到一个sshd 服务器,使用端口转发,X11转发,文件传输等等。你可以将它的功能集成到你自己的 程序中。
     

    二、 实现原理

            1. 根据远程主机的IP地址,用户名和端口,建立会话(Session);

            2. 设置用户信息(包括密码和Userinfo),然后连接session;
                getSession()只是创建一个session,需要设置必要的认证信息之后,调用connect()才能建立连接。

            3. 在session上建立指定类型的通道(Channel);

            4. 设置channel上需要远程执行的Shell脚本,连接channel,就可以远程执行该Shell脚本;
                调用openChannel(String type) 可以在session上打开指定类型的channel。该channel只是被初始化,使用前需要先调用                connect()进行连接。

            5. 可以读取远程执行Shell脚本的输出,然后依次断开channel和session的连接;

     

    三、Channel的类型可以为如下类型:

    1)shell - ChannelShell 

    2)exec - ChannelExec 

    3)direct-tcpip - ChannelDirectTCPIP 

    4)sftp - ChannelSftp 

    5)subsystem - ChannelSubsystem


    四、上传和下载文件实例​

    相关依赖:

    <dependency>
        <groupId>com.jcraft</groupId>
        <artifactId>jsch</artifactId>
        <version>0.1.54</version>
    </dependency>


    SFTPClient.Java

    import com.jcraft.jsch.Channel;
    import com.jcraft.jsch.ChannelSftp;
    import com.jcraft.jsch.JSch;
    import com.jcraft.jsch.JSchException;
    import com.jcraft.jsch.Session;
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.util.Properties;
    
    public class SFTPClient {
    
        private static final Logger LOGGER = LoggerFactory.getLogger(SFTPClient.class);
    
        private String host;
        private int port;
        private String username;
        private String password;
        private static int SESSION_TIMEOUT = 30000;
        private static int CHANNEL_TIMEOUT = 3000;
    
        private ChannelSftp sftp;
    
        public String getHost() {
            return host;
        }
    
        public void setHost(String host) {
            this.host = host;
        }
    
        public int getPort() {
            return port;
        }
    
        public void setPort(int port) {
            this.port = port;
        }
    
        public String getUsername() {
            return username;
        }
    
        public void setUsername(String username) {
            this.username = username;
        }
    
        public String getPassword() {
            return password;
        }
    
        public void setPassword(String password) {
            this.password = password;
        }
    
        public SFTPClient() {}
    
        public SFTPClient(String host, int port, String username, String password) {
            this.host = host;
            this.port = port;
            this.username = username;
            this.password = password;
        }
    
        /**
         * 连接sftp服务器
         * @param host      主机
         * @param port      端口
         * @param username  用户名
         * @param password  密码
         */
        public boolean connect(String host, int port, String username, String password) {
            try {
                JSch jsch = new JSch();
                Session sshSession = jsch.getSession(username, host, port);
                sshSession.setPassword(password);
                Properties sshConfig = new Properties();
                sshConfig.put("StrictHostKeyChecking", "no");  // 跳过检测
                sshSession.setConfig(sshConfig);
                sshSession.connect();
                //sshSession.connetc(SESSION_TIMEOUT);
                LOGGER.info("SFTPClient SFTP Session connected.");
                Channel channel = sshSession.openChannel("sftp");
                channel.connect();
                //channel.connect(CHANNEL_TIMEOUT); 
                this.sftp = (ChannelSftp) channel;
                LOGGER.info("SFTPClient Connected to " + host);
                return true;
            } catch (Exception e) {
                LOGGER.error("SFTPClient Connect failed, {}", e.getMessage());
                return false;
            }
        }
    
        /**
         * 上传文件
         * @param directory     上传的目录
         * @param fileName      上传的文件名
         * @param uploadFile    要上传的文件
         */
        public boolean upload(String directory, String fileName, File uploadFile) {
            try {
                sftp.cd(directory);
                FileInputStream fileInputStream = new FileInputStream(uploadFile);
                sftp.put(fileInputStream, fileName);
                fileInputStream.close();
                return true;
            } catch (Exception e) {
                LOGGER.error("SFTPClient upload file failed, {}", e.getMessage(), e);
                return false;
            }
        }
    
        /**
         * 下载文件
         * @param directory     下载目录
         * @param fileName      下载的文件名
         * @param saveFile      存在本地的路径
         */
        public File download(String directory, String fileName, String saveFile) {
            try {
                sftp.cd(directory);
                File file = new File(saveFile);
                if (file.exists()) {
                    file.delete();
                }
                FileOutputStream fileOutputStream = new FileOutputStream(file);
                sftp.get(fileName, fileOutputStream);
                fileOutputStream.close();
                return file;
            } catch (Exception e) {
                LOGGER.error("SFTPClient download file failed, {}", e.getMessage(), e);
                return null;
            }
        }
    
        /**
         * 断开连接
         */
        public void disconnect() {
            try {
                sftp.getSession().disconnect();
            } catch (JSchException e) {
                LOGGER.error("SFTPClient disconnect error, {}", e.getMessage(), e);
            }
            sftp.quit();
            sftp.disconnect();
        }
    
    }


    更多资料请参考官网api

     

    展开全文
  • jsch-0.1.54

    2018-11-10 09:12:53
    用于远程执行Linux服务器命令,可进远程操作和返回字符
  • jsch工具类,在java中通过使用本工具可以使用shell远程控制服务器。 具体操作可以看我的博客,《java通过shell命令远程操作服务器(SSH)》,里面保护jar包源码jar包,demo: ...
  • 亲测有效,java进行ssh协议连接的jar包,sftp上传下载文件。项目ssh升级后,以前的jar包不能用,换了这个jar包,可以用
  • jsch-0.1.54.jar

    2017-05-24 20:35:51
    JSch是Java Secure Channel的缩写。JSch是一个SSH2的纯Java实现。它允许你连接到一个SSH服务器,并且可以使用端口转发,X11转发,文件传输等。
  • 因为工程代码量较大,因此摘取核心代码片段,下载下来之后,可参考。如有问题,请联系。
  • jsch API文档

    2016-05-11 13:10:44
    jsch_APIchm.rar
  • JSch对linux上文件的上传,下载,批量处理,删除文件等等,已在项目中使用。
  • 提供jsch.jar 以及运用jar包实现FTP上传下载删除等操作
  • eclipse-jsch-agent-proxy 在 Eclipse 上使用 ssh-agent 和 Pageant 的插件 描述 该项目提供 Eclipse 插件以在 Eclipse 上使用的和 。 提供的插件依赖于 。 这是针对的努力。 如何尝试 这些插件需要 jsch-0.1.49。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,167
精华内容 2,066
关键字:

jsch