`

JAVA-SSH2:JSch试用

 
阅读更多

试用开源软件JSch实现通过SSH2协议,在JAVA程序内远程执行linux命令。

 

官方网站:http://www.jcraft.com/

 

 

package ssh;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.nio.charset.Charset;

import com.jcraft.jsch.Channel;
import com.jcraft.jsch.ChannelExec;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.Session;

public class JSchDemo
{
    
    public static void main(String[] args) throws Exception
    {
        String charset = "UTF-8";
        String user = "root";
        String passwd = "123456";
        String host = "40.40.40.50";
        String command = "ls -l";
        
        JSch jsch = new JSch();
        Session session = jsch.getSession(user, host, 22);
        session.setPassword(passwd);
        java.util.Properties config = new java.util.Properties();
        config.put("StrictHostKeyChecking", "no");
        session.setConfig(config);
        session.connect();
        
        Channel channel = session.openChannel("exec");
        ((ChannelExec) channel).setCommand(command);
        channel.setInputStream(null);
        ((ChannelExec) channel).setErrStream(System.err);
        
        channel.connect();
        InputStream in = channel.getInputStream();
        BufferedReader reader = new BufferedReader(new InputStreamReader(in, Charset.forName(charset)));
        String buf = null;
        while ((buf = reader.readLine()) != null)
        {
            System.out.println(buf);
        }
        reader.close();
        channel.disconnect();
        session.disconnect();
    }
    
}
分享到:
评论

相关推荐

    ApacheJMeter-ssh-1.2.0.jar jsch-0.1.55.jar

    2. jsch-0.1.55.jar:这是一个开源的Java库,实现了SSH2协议。JSch库为Java应用提供了安全的远程 shell 访问功能。在JMeter SSH 插件中,JSch作为底层通信库,负责加密的会话建立、身份验证、通道管理和数据传输等...

    java进行ssh协议连接的jar包jsch-0.1.54.jar

    在本文中,我们将深入探讨如何使用JSch-0.1.54.jar这个库来实现在Java程序中进行SSH连接。 首先,JSch库是Java SSH2的一个实现,由Simon Tungsoe创建并维护。JSch库提供了一个API,使得开发者可以方便地在Java应用...

    jsch-0.1.54-API文档-中英对照版.zip

    赠送jar包:jsch-0.1.54.jar; 赠送原API文档:jsch-0.1.54-javadoc.jar; 赠送源代码:jsch-0.1.54-sources.jar; 赠送Maven依赖信息文件:jsch-0.1.54.pom; 包含翻译后的API文档:jsch-0.1.54-javadoc-API文档-...

    java端口转发源码-trilead-ssh2:Jenkins中使用的补丁trilead-ssh2

    8. **与其他SSH库的对比**:虽然Java中还有其他SSH库如JSch,但Trilead SSH2以其全面的功能和良好的文档支持,成为许多开发者的首选。然而,选择哪个库取决于具体项目需求,如性能、易用性、社区支持等因素。 通过...

    jcraft-jsch.zip

    《JSch:Java SSH 库的深度探索》 JSch,全称为JCraft SSH,是一个用Java编写的开源库,用于实现Secure Shell (SSH) 协议。在标题"jcraft-jsch.zip"中,我们可以看到这个压缩包包含了JSch的两个版本,0.1.24和...

    jsch-0.1.54-API文档-中文版.zip

    赠送jar包:jsch-0.1.54.jar; 赠送原API文档:jsch-0.1.54-javadoc.jar; 赠送源代码:jsch-0.1.54-sources.jar; 赠送Maven依赖信息文件:jsch-0.1.54.pom; 包含翻译后的API文档:jsch-0.1.54-javadoc-API文档-...

    vertx-ssh-client:基于 JSch 的 SSH 客户端的异步实现

    Vert.x SSH 客户端 Vert.x 模块,用于围绕 JSch 创建异步包装器,用于对 SSH 服务器执行 SSH 操作。 它的设计与 Vert.x Core 的 NetSocket 类似,但有一些特定于 SSH 的附加项目。

    jsch-0.1.55.jar 包

    `jsch-0.1.55.jar` 提供了强大的SSH2连接和命令执行能力,对于需要在Java应用程序中执行远程Linux操作的开发者来说,这是一个不可或缺的工具。通过理解JSCH的工作原理和使用方法,开发者可以构建出安全、可靠的远程...

    jsch-0.1.55_jsch_JSCH0.1._55_服务器_jsch0.1.55_

    JSch 是SSH2的一个纯Java实现。它允许你连接到一个sshd 服务器,使用端口转发,X11转发,文件传输等等。你可以将它的功能集成到你自己的 程序中。同时该项目也提供一个J2ME版本用来在手机上直连SSHD服务器

    jsch的jar包,包含0.1.51,0.1.52,0.1.53,0.1.54等这几个版本

    JSch,全称为Java Secure Channel,是一个开源的Java库,用于实现SSH(Secure Shell)协议。这个库的主要目的是提供安全的远程登录、文件传输以及端口转发等功能,广泛应用于需要在Java应用程序中进行安全通信的场景...

    gradle-ssh-plugin:Gradle SSH插件

    `gradle-ssh-plugin`是由Jsch库支持的,它提供了一种在Gradle构建脚本中集成SSH功能的方式。开发者可以利用这个插件来执行远程服务器上的任务,比如安装依赖、启动服务、更新配置文件等,从而实现自动化部署。 **二...

    jsch.jar--一个java实现的运行linux下面ssh和scp命令的工具

    ant运行scp以及sshexec任务所必须的jar包,这是optional的,所以ant默认不会有的,需要自己加上

    publish-over-ssh.rar

    1. jsch.hpi:这个插件可能与JSch库有关,JSch是一个纯Java实现的SSH2库,允许Java应用程序连接到SSH服务器进行端口转发、SCP、SFTP和SSH命令执行等功能。在Jenkins中,它可能为其他插件提供SSH连接的支持。 2. ...

    jsch.agentproxy.svnkit-trilead-ssh2-0.0.7.jar

    java运行依赖jar包

    sshexec-maven-plugin:基于Jsch的ssh的文件上传和命令执行的Maven插件

    它依赖于Jsch库,这是一个Java实现的SSH2库,允许开发者通过SSH协议与远程服务器进行交互。这个插件极大地简化了在持续集成环境中对远程服务器的自动化操作。 ### Maven配置 在`pom.xml`中配置SSHExec Maven ...

    详解Java使用Jsch与sftp服务器实现ssh免密登录

    Jsch(Java Secure Channel)是一个纯Java语言编写的库,它能够实现SSH(Secure Shell)功能。SSH是一种安全协议,它主要用于在不同的系统或服务器间建立安全的连接,并在传输数据的过程中对数据进行加密。在Java中...

    jsch-0.1.55,包含jar和source

    在压缩包内,有两个文件:"jsch-0.1.55.jar"是编译后的二进制库,可以直接在Java项目中作为依赖使用,而"jsch-0.1.55"很可能包含的是源代码,开发者可以通过阅读这些源代码来理解JSch的工作原理,或者对其进行修改以...

    jsch的jar包

    JSCH(Java Secure Channel)是一个开源的Java库,它实现了SSH2协议,用于在Java应用程序中实现安全的网络通信。SSH2协议提供了加密、身份验证和安全的数据传输,常用于文件传输服务如SFTP(Secure File Transfer ...

    3desjava源码-jsch:将JSch发布历史粗略导入git以供使用

    在压缩包文件名“jsch-master”中,“master”通常是指Git仓库的主分支,代表了项目的最新稳定版本。这暗示着压缩包内包含了JSch项目的主线源代码。 对于3DESJava源码,核心知识点可能包括: 1. **DES算法**:单个...

    ssh开源开发API-JSCH.zip

    JSCH(Java Secure Channel)是SSH的一个开源实现,它为Java开发者提供了一个API,可以方便地创建SSH连接,执行命令,进行文件传输等操作。这个API允许开发者在Java应用中集成SSH功能,例如用于自动化运维、远程脚本...

Global site tag (gtag.js) - Google Analytics