用于IRC聊天的Java SSH隧道

时间:2012-06-24 09:27:21

标签: java ssh irc

我的程序连接到freenode.net上的IRC房间,它使用端口6667,显然该端口在我的学院被阻止所以项目在那里不起作用(我希望在我提出之前我已经知道了,但是它将在下周到期,所以我现在无法创建一个新项目。我读到有可能隧道连接,但我不知道该怎么做。

我读过我必须使用SSH库,但我找不到一个可以帮助我使用套接字隧道连接。

我在MindTerm中找到了一个名为ssh的软件包,但它是一个非常古老的软件包,基本上是使用这些代码来完成这个过程(

SSHSocketFactory fact = new SSHSocketFactory("ssh.freessh.biz", 22, new SSHPasswordAuthenticator("freessh", "7QO5dkmg<"));

ventanachat.socket = fact.createSocket(servidorirc, puerto);

它给了我:java.io.IOException:MindTerm还不支持SSHv2,在服务器中启用SSHv1兼容性

所以我尝试了一个支持ssh2的新版本,但我不能得到相同的过程,因为这里的类不同而且没有文档。

socket基本上是Socket socket = new Socket(“irc.freenode.net”,6667);

我想知道我可以使用哪个库,以及如何使用?

3 个答案:

答案 0 :(得分:2)

您可能会因绕过IRC端口的阻塞而遇到麻烦。

我有另一个想法。在您正在开发的计算机上下载并安装IRC服务器软件。然后,您应该能够从客户端连接到它,而不会阻止端口。 (如果您仍然遇到端口问题,只需配置客户端和服务器使用另一个。)


或者,看看这个SO问题的答案:Simple SSH Tunnel in Java

答案 1 :(得分:1)

市场上有几个用于Java的SSH库,其中大多数都支持SSH隧道。我们提供SecureBlackbox产品(Java版),其中包含样本(包括隧道),文档和支持。

答案 2 :(得分:0)

Ganymed和Jsch都支持SSH隧道,两者都是免费的。