방법: http용 여러 SSH 터널을 사용하지만 브라우저에서 sub[1|2].domain.tld를 사용합니다(리디렉션? 프록시?)

방법: http용 여러 SSH 터널을 사용하지만 브라우저에서 sub[1|2].domain.tld를 사용합니다(리디렉션? 프록시?)

Sry: 아직도 질문의 올바른 제목을 찾고 있습니다.

원격 서버에 대한 두 개의 SSH(http) 터널이 있습니다. 포트 8080 및 포트 3000

ssh -L 3000:127.0.0.1:3000 -L 8080:127.0.0.1:8080 user@server

로컬에서는 Firefox 브라우저 등을 사용하여 http localhost:8080 또는 localhost:3000을 통해 서비스/웹 애플리케이션에 액세스할 수 있습니다.

하지만 시중에 나와 있는 웹 애플리케이션은 100% 안전하지 않습니다. 의미: 실제 호스트 이름(예: app1.domain.localdomain(내부 LAN))에 대한 링크가 있고 "연결 없음" 상태가 됩니다.

항상 URL을 수정해야 합니다(http GET의 경우 또는 http POST의 경우 더 복잡함).

하나의 http 터널에는 Firefox 프록시 설정을 사용할 수 있지만 다른 터널에는 사용할 수 없습니다.

http app1.domain.tld 또는 app2.domain.tld를 호출한 후 터널을 사용하려면 어떻게 해야 합니까?

해결책을 찾고 계십니까: iptables? 그렇다면: 터널을 열 때 임시로 설정하거나 시작하는 방법은 무엇입니까?

다음을 추가하여 편집 내용을 업데이트했습니다.

VPN을 사용하는 경우(VPN이 활성화된 다른 CPU/업무용 노트북): 모든 것이 원하는 방식으로 작동합니다. 그러나 다른 CPU에서는 모든 트래픽이 VPN 연결을 통과하는 것이 아니라 1, 2, 3개의 호스트/포트만 통과하기를 원합니다.

친절한 안부

답변1

가장 쉬운 방법은 일종의 네트워크 프록시를 사용하고 다시 매핑하는 app1.domain.localdomainlocalhost:8080입니다.

에이전트 를 필요로 하는 모든 애플리케이션에 제공할 수 있는 경우(예: 등을 통해 http_proxy=...) https_proxy=...에이전트를 로컬로 실행할 수 있습니다 .

그렇지 않으면 "투명 프록시"(google it)가 필요합니다.

이 웹사이트에는 비슷한 질문을 찾는 데 사용할 수 있는 프록시가 많이 있습니다. 한 가지 옵션은 입니다 nginx.


즉, 그렇다면당신의웹 애플리케이션의 경우 테스트를 위해 터널이 필요한 경우 기본 이름을 어디에서나 바꿀 수 있는 방식으로 구축하는 것이 좋습니다.

관련 정보