我需要使用SSH连接从远程计算机上获取了一些文件,但问题是:传输文件低谷SSH隧道与Java
客户端(运行Windows),我会跑我的应用程序的计算机连接到包含文件(运行Unix)的网络在那里我可以看到服务器的远程(第二台计算机(运行Unix),在相同的网络),我可以用它做SSH连接,但电脑是不是在这个网络中,我只可以连接这个低谷动态隧道SSH的第二台电脑,在这里我通常使用腻子的配置此连接,然后我就可以访问远程文件打开。
下图展示的架构,(防火墙就像是第二A机)
我需要自动进行这项工作,所以我已经做了一些试验用java和JSch库,这里是一些代码:
/* Direccion y puerto del host local */
String host = "localhost";
int lport = 5040;
/* Direccion y puerto del host remoto*/
String rhost = "localhost";
int rport = 80;
/* Usuario y password para conectarse al servidor ssh*/
String user = "test";
String pwd = "test";
try{
JSch jsch=new JSch();
Session session=jsch.getSession(user, host, 22);
session.setPassword("test");
Properties config = new Properties();
config.put("StrictHostKeyChecking","no");
session.setConfig(config);
session.connect();
int assinged_port=session.setPortForwardingL(lport, rhost, rport);
System.out.println("localhost:"+assinged_port+" -> "+rhost+":"+rport);
我连接,但是当我运行一个命令全光照对象的会话的答案是从第二台机器不是从如我所料的第三台机器,我想知道是否有ANOT她的图书馆,有助于使这项工作或我使用错误的JSch。
维基链接不工作了 – sjngm 2017-08-04 15:16:45
这是不幸的 - 看起来像SourceForge上得到了(至少在这个项目)摆脱它们链接到MediaWiki功能。我会看看我是否有某个版本的这个类存储在某个地方。 – 2017-08-04 16:44:36