java 利用jsch端口转发 建立连接

其他代码都一样,参照《 使用JSch完成 ssh隧道建立》 只有获取连接的部分不相同。

代码如下:

// 端口转发

// 链接两层

public boolean connect() throws JSchException {

    try {

        session = ssh.getSession(this.username, this.host, this.port);

        session.setPassword(this.password);

        session.setConfig("StrictHostKeyChecking", "no");

        // 堡垒机端口,内部服务器IP ,内部服务器端口

        session.setPortForwardingL(2233, tunnelRemoteHost, 22);

        session.connect(30000);

        setSession(session);

        // todo :此处待判断内部服务器是否启动。

        //在这个链接上打开了一个新的通道

        session.openChannel("direct-tcpip");

        // todo 第一个参数 是堡垒机 还是内部服务器的username

        secondSession = ssh.getSession(this.username, "localhost", 2233);

        secondSession.setPassword(secondPassword);

        secondSession.setConfig("StrictHostKeyChecking", "no");

        // 现在链接搭配了内部服务器中

        secondSession.connect(30000);

        setSecondSession(secondSession);

        setReady(true);

        return true;

    } catch (Exception e) {

        setReady(false);

    }

    return false;

}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,993评论 19 139
  • feisky云计算、虚拟化与Linux技术笔记posts - 1014, comments - 298, trac...
    不排版阅读 3,926评论 0 5
  • 洛云峰通过几年的努力,从一个小快餐店老板转变成一家餐馆娱乐为一体的大酒店老总。由于物质的富有,身边也多了各路称兄道...
    金陵雨儿阅读 227评论 0 2
  • 下面的两张照片都是去黄山旅游时照的,照片里的人物我并不认识,但是从他们的笑容里我能感受到一份知足,一份童真,让我难...
    故乡月阅读 381评论 2 4