
이것을 가정하자상태(imageshack 이미지)네트워크의. VNC 클라이언트와 VNC 서버 간의 SSH 터널 연결을 원합니다.
PC1과 PC2 모두 TightVNC 서버와 SSH 서버를 실행하고 포트 22를 허용했습니다. PC 클라이언트는 다음을 사용하여 PC1에 연결하려고 합니다.TightVNC 자바 뷰어. TightVNC Java 뷰어(원격 호스트? 포트? SSH 서버?)에 어떤 주소를 입력해야 합니까? 올바른 PC로 전달하려면 라우터에 어떤 구성을 만들어야 합니까? 답변해주셔서 감사합니다.
답변1
먼저 라우터에서 포트 전달을 설정해야 합니다. ssh를 예로 들어 이를 실행해 보겠습니다(다른 모든 프로토콜은 동일하게 작동합니다).
머신이 하나만 있는 경우 간단히 port 를 전달할 수 있습니다 22
. 포트를 하나의 시스템에만 전달할 수 있으므로 이는 귀하의 경우에는 옵션이 아닙니다. 귀하의 컴퓨터에 대해 두 개의 포트 번호를 구성하십시오. 이 경우에는 10022
및 를 사용하겠습니다 20022
. 이제 라우터에서 두 가지 전달을 설정해야 합니다.
- 외부 포트에서
10022
내부 IP 및 포트로 하나10.0.0.12:22
- 외부 포트에서
20022
내부 IP 및 포트로 하나10.0.0.14:22
이는 포트의 모든 외부 요청이 PC1의 10022
포트(ssh)로 이동함 을 의미합니다.22
이제 외부 PC에서 IP에 대한 두 개의 SSH 연결이 필요합니다 88.65.41.128
. 이러한 연결은 기본 포트에서는 작동할 수 없지만 및 22
에서는 작동할 수 없습니다 .10022
20033
다른 모든 프로토콜/서비스에서도 동일한 작업을 수행할 수 있습니다. 포트를 22
해당 서비스의 포트로 바꾸십시오.
또는 SSH를 통해 모든 서비스를 터널링할 수 있습니다. tighVNC 포트는 모르지만 9000
. 다음을 사용하여 PC1에 대한 터널을 설정할 수 있습니다.
ssh -L 9001:localhost:9000 [email protected]:10022
이는 ssh를 통해 PC1에 연결하고 주소 localhost:9000
(PC1 보기에서)를 실행하는 시스템의 포트 9001로 전달합니다. PC2에서 동시에 TightVNC를 전달할 수 있도록 9001을 선택합니다.
ssh -L 9002:localhost:9000 [email protected]:20022
이제 주소 localhost:9001
와 localhost:9002
.