Java中的简单SSH隧道

Use*_*er1 15 java ssh tunnel

我想用Java创建一个SSH隧道.我在另一篇文章中发现了不少Java SSH库.在深入研究每个选项之前,也许有人可以给我一些他们如何做到的代码片段,或者至少告诉我哪个客户端库最有效.

我只需要隧道.我不需要文件传输,终端仿真等等.是否有一些简单的代码行可以转发服务器上的端口以在我的客户端的localhost适配器上工作?理想情况下,客户端和服务器都是Java,但我现在只会满足于客户端.

Pas*_*ent 23

好吧,正如另一个问题所指出的,JSch确实是一个很好的选择,并且在这里有几个例子.该PortForwardingL.java类可能是一个很好的起点.


ZZ *_*der 20

您可以使用多个库来执行此操作.我最喜欢的是MindTerm包内的ssh库,

http://linuxmafia.com/pub/java/ISNetworks-MindTerm-1.2.1-SCP3.tar.gz

您可以打开这样的隧道连接,

  SSHSocketFactory fact = new SSHSocketFactory(sshHost, sshPort, new SSHPasswordAuthenticator(sshUser, sshPassword));

  sock = fact.createSocket(host, port);
Run Code Online (Sandbox Code Playgroud)

  • +1哇.这很简单.太糟糕了,许可证有点奇怪(我不好意思,我不需要像BSD那样的东西).我也尝试接受这个作为答案,但是只允许一个答案.我至少赞成你的回答.谢谢你的帮助. (2认同)