返回顶部
首页 > 资讯 > 精选 >使用JSCH框架通过跳转机访问其他节点的方法
  • 230
分享到

使用JSCH框架通过跳转机访问其他节点的方法

jsch跳转机访问 2023-05-30 18:05:43 230人浏览 独家记忆
摘要

之前搞了套远程访问ssh进行操作的代码,最近有需求,需要通过一台跳转机才能访问目标服务。在网上搜了半天,也没找到比较好的例子,就自己翻阅了下jsCH的api。但是看的云里雾里的。联想了下,端口转发的原理是否是把目标节点ip:port映射到l

之前搞了套远程访问ssh进行操作的代码,最近有需求,需要通过一台跳转机才能访问目标服务。在网上搜了半天,也没找到比较好的例子,就自己翻阅了下jsCH的api。但是看的云里雾里的。联想了下,端口转发的原理是否是把目标节点ip:port映射到localhost:port,然后通过localhost:port发送消息就可以抵达目标节点呢?

带着这个推论,改造了下之前的代码。

原有代码通过jsch连接目标节点服务器这里就不多说了,自行百度,网上很多。

下面贴下改造之后的代码:

 public static ChannelSftp connect(String ip, String userName, String pwd, int port) throws JSchException {  if (port <= 0)  {   port = PORT;  }  Session sshSession = null;  JSch jsch = new JSch();  sshSession = jsch.getSession(userName, ip, port);    sshSession.setPassword(pwd);  Properties sshConfig = new Properties();  sshConfig.put("StrictHosTKEyChecking", "no");  sshConfig.put("PreferredAuthentications",    "passWord,keyboard-interactive");  sshSession.setConfig(sshConfig);      sshSession.connect(TMOUT);//可设置超时时间   //此处开始为端口映射到本地的部分  sshSession.setPortForwardingL(本地端口, 目标节点地址, 22);  //完成上诉映射之后,即可通过本地端口连接了  Session session = jsch.getSession("目标服务用户名", "127.0.0.1",本地端口);  Properties remoteCfg = new Properties();  remoteCfg.put("StrictHostKeyChecking", "no");  remoteCfg.put("PreferredAuthentications",    "password,keyboard-interactive");  session.setConfig(remoteCfg);  session.setPassword("目标服务密码");  session.connect();  //后续如何可自行改变,网上运用很多  Channel channel = (Channel) session.openChannel("sftp");//创建sftp通信通道   channel.connect();  ChannelSftp sftp = (ChannelSftp) channel;    return sftp; }

--结束END--

本文标题: 使用JSCH框架通过跳转机访问其他节点的方法

本文链接: https://lsjlt.com/news/220396.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 使用JSCH框架通过跳转机访问其他节点的方法
    之前搞了套远程访问ssh进行操作的代码,最近有需求,需要通过一台跳转机才能访问目标服务。在网上搜了半天,也没找到比较好的例子,就自己翻阅了下JSCH的API。但是看的云里雾里的。联想了下,端口转发的原理是否是把目标节点ip:port映射到l...
    99+
    2023-05-30
    jsch 跳转机 访问
  • Python通过跳板机访问数据库的方法
    什么是跳板机? 跳板机(Jump Server):也称堡垒机,是一类可作为跳板批量操作的远程设备的网络设备,是系统管理员和运维人员常用的操作平台之一。 那么具体是做什么的呢? 现在一...
    99+
    2024-04-02
  • Python通过跳板机访问数据库的方法是什么
    本篇内容主要讲解“Python通过跳板机访问数据库的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python通过跳板机访问数据库的方法是什么”吧!什么是跳板机?跳板机(Jump Se...
    99+
    2023-06-25
  • JavaScript中访问节点对象的方法有哪些如何使用
    JavaScript中访问节点对象的方法有哪些? 复制代码 代码如下: var obj = document.getElementById('fdafda'); var obj = ...
    99+
    2022-11-15
    js 节点对象
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作