2013-10-17 3 views
2

mod_proxy, mod_proxy_CONNECTmod_proxy_HTTP 모듈이 활성화 된 상태로 실행중인 Apache 2 데비안 웹 서버가 있습니다. 내 목표는 포트 80을 통해 SSH 세션을 터널링하는 포워드 프록시 서버로 사용할 수 있도록하는 것입니다. 따라서 SSH 클라이언트는 (포트 80에서) 프록시 서버를 사용하여 호스팅되는 SSH 서버에 연결할 수 있어야합니다 프록시 모듈은 다음과 같이 구성됩니다.포트 2를 요청할 때 아파치 2 포워드 프록시 서버가 403을 반환합니다.

ProxyRequests On 

<Proxy *> 
    AddDefaultCharset off 
    Order Deny,Allow 
    Allow from all 
</Proxy> 

일반 웹 사이트에 연결하기 위해 프록시를 사용할 때 제대로 작동합니다. 또한 브라우저에서 GET 메소드를 사용하여 포트 22의 SSH 서버에 연결할 때도 작동합니다. 예 :

GET http://sshserver.com:22/ HTTP/1.1 
Host: sshserver.com:22 

단, CONNECT 방법을 사용하는 경우 (우리가 사용할 수있는 SSH 프로토콜), 예 :

CONNECT sshserver.com:22 HTTP/1.1 
Host: sshserver.com:22 

서버는 예감 403 Forbidden 응답으로 응답합니다.

답변

2

SSH 및 FTP에 대해 동일한 문제가있었습니다. 당신은 프록시의 구성이를 추가해야합니다 :이 값은 또한 FTP를 사용 obove directiv로, 포트 443 및 563로 설정되어, 오직 이러한 포트가 연결 방법을 사용할 수 있습니다 기본적으로

AllowCONNECT 443 563 21 22 

및 SSH 기본 포트. 자세한 내용은 http://httpd.apache.org/docs/2.2/mod/mod_proxy.html#allowconnect을 참조하십시오.

편집 : 당신은 또한 다음과 같이 한 번에 여러 포트를 허용하는 portranges을 지정할 수 있습니다 아파치 버전 2.4 이후 :

AllowCONNECT 20-30