2011-04-21 4 views
1

최근에 Java로 프록시 서버를 작성했습니다. 내가 작성한 서버는 GET 및 POST 메소드를 처리 할 수있다. 그러나, 그것은 많은 도움이 t support HTTPS protocol. Googling didn하지 않습니다. 방금 CONNECT 메소드를 구현해야한다는 것을 알게되었습니다. (그리고 우리는 HTTP TUNNELING을 사용해야합니다.) 그러나, 나는이 일을 어떻게 얻을 것인가? 나는 모호한 생각을 갖고 있지 않다. 당신이 나에게 몇 가지 유용한 링크를하자 또는 거친 아이디어 좀 도와 경우는 .. 도움이 될 것 프록시 서버 작성

나는 다음과 같은 코드를 사용하여 시도했지만 잠시 후 붙어있어

:

SSLSocketFactory factory = (SSLSocketFactory) SSLSocketFactory.getDefault(); 

Socket tunnel = new Socket ("127.0.0.1",8036); 

OutputStream serverOut = tunnel.getOutputStream(); 
String requestSSLServer = "CONNECT " + urlServer + " HTTP/1.0 \n" + secondLine + "\r\n"; 
byte b[]; 
b= requestSSLServer.getBytes("ASCII7"); 
serverOut.write(b); 

해야한다 무엇 IP 소켓 개체에 전달 된 주소 및 포트 번호 ?? 다음에해야 할 일은 무엇입니까 ?? 다음에해야 할 일은 무엇입니까 ??

+0

메일 서버를 말할 때 SMTP 나 웹 메일 (Gmail의 웹 인터페이스와 같은)에 대해 이야기하고 있습니까? –

+0

@Robin : 나는 웹 메일을 의미합니다. 현재 Gmail이나 yahoomail과 같은 메일 인터페이스에 액세스하려고하면 페이지가 열리지 않습니다. 그래서, 나는 단지 그것을 작동하게하고 싶습니다. – letsc

답변

1

메일 릴레이를 쓰는 것은 헤더가 다르므로 http 프록시보다 복잡하며 그 중 일부는 변경/설정해야합니다. 그러나 메일 (보내기) 릴레이를 제공하려는 경우 SMTP (메일 전송)의 표준 포트는 25입니다. 그러나 이것은 일반 텍스트이기 때문에 인증이 필요하면 아마도 smtps (보안 SMTP)가 465이어야합니다. imap (메일 읽기) 프록시를 제공하려는 경우 포트는 143 또는 220입니다. (imap3의 경우) - imap (secure imap)의 경우도 993입니다. POP3 (읽기 메일) 프록시를 제공하려는 경우 pop2에 대한 포트는 109이며 POP3에 대해서는 103입니다. 널리 확산 요즘 - 나는 아직도 POP2를 사용하는 사람을 모르겠다. 또한 안전한 POP3는 포트 995에 있습니다.

2

작성한 것은 HTTP 프록시입니다. 전자 메일은 HTTP와 관련이없는 프로토콜을 사용합니다. 이러한 프로토콜 (POP, SMTP 및 IMAP)에 대해 알아보고이 작업으로 돌아옵니다.