2012-06-24 2 views
2

내 프로그램이 freenode.net의 IRC 룸에 연결되면 포트가 내 대학에서 차단되어 포트가 6667로 사용되므로 프로젝트가 제대로 작동하지 않습니다. 내가 제안하기 전에,하지만 다음 주에 만기가되었으므로 나는 지금 새로운 프로젝트를 만들 수 없다.) 나는 그 연결을 터널링하는 것이 가능하다는 것을 읽었지 만, 어떻게해야할지 모르겠다.IRC 채팅을위한 Java SSH 터널링

SSH 라이브러리를 사용해야했지만, 소켓을 사용하여 연결을 터널링하는 데 도움이되는 것을 찾을 수 없습니다.

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

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

그것은 나에게 제공합니다 : 때 java.io.IOException :

나는 기본적으로 과정 (나는 생각한다)를 사용하여 이러한 라인을한다는 것을, MindTerm하지만 정말 이전에 SSH라는 패키지를 발견 MindTerm 할 아직 SSHv2를 지원하지 않습니다. 서버에서 SSHv1 호환성을 활성화하십시오.

그래서 SSH2 지원이있는 새 버전을 사용해 보았습니다.하지만 여기서는 클래스가 다르기 때문에 동일한 프로세스를 얻을 수 없으며 문서가 없습니다.

소켓은 기본적으로 소켓입니다. socket = new Socket ("irc.freenode.net", 6667);

어떤 라이브러리를 사용할 수 있을지 궁금합니다. 어떻게해야합니까?

+1

모든 freenode 서버는 6665, 6666, 6667, 6697 (SSL 만), 7000 (SSL 만), 7070 (SSL 만), 8000, 8001 및 8002 포트에서 수신 대기합니다. [출처] (http://freenode.net/irc_servers.shtml) – ArjunShankar

+0

예, 분명히 3000보다 큰 모든 포트가 차단되었습니다 ... – OHHH

답변

2

IRC 포트 블록을 우회하여 문제가 생길 수 있습니다.

다른 아이디어가 있습니다. 개발중인 컴퓨터에 IRC 서버 소프트웨어를 다운로드하여 설치하십시오. 그런 다음 포트를 차단하지 않고 클라이언트에서 포트에 연결할 수 있어야합니다. 이 SO 질문에 대한 답변을보고, 또는


을 (. 그리고 당신은 여전히 ​​포트 문제가 발생하면 바로 클라이언트와 서버 사용에 다른 하나를 구성) : Simple SSH Tunnel in Java

+0

불행히도, 내 연결은 그렇게 할 수 없습니다, 나는 대학에있는 누군가에게 물었고, 그녀는 내가 터널을 할 수있는 허가를 받았다고 말했다. 그래서 나는 그것에 관해서 궁금해했다 ... – OHHH

1

SSH 몇있다 시장에 나와있는 Java 용 라이브러리이며 대부분은 SSH 터널링을 지원합니다. 샘플 (터널링 포함), 문서 및 지원이있는 SecureBlackbox 제품 (Java 버전)을 제공합니다.

+0

나는 자유로운 사람을 찾고있다. – OHHH

0

Ganymed와 Jsch는 모두 SSH 터널링을 지원하며 둘 다 무료입니다.