퍼티를 사용하는 멀티 홉을 통한 SSH 터널


13

두 개의 연속 Linux 시스템 뒤에있는 VNC를 실행하는 Linux 시스템 (VNCServer라고 함)에 연결하려는 상황이 있습니다. 즉, VNCServer로 ssh하려면 랩톱에서 Gateway1로 ssh하고 Gateway1 쉘에서 ssh해야합니다 Gateway2로 ssh 한 다음 해당 셸에서 VNCServer로 ssh했습니다. 네트워크 설계 및 액세스 흐름 랩탑-> 게이트웨이 1-> 게이트웨이 2-> 서버를 변경할 수 없습니다. Gateway1에 대한 루트 권한이 없으며 22 및 5901을 제외한 모든 포트가 닫힙니다.

랩톱에서 VNC 뷰어를 시작하고 VNC 서버에 액세스 할 수있는 방법이 있습니까? 나는 ssh 터널링 기능을 사용하여 수행 될 수 있으며 Windows 랩톱에 퍼티가 있음을 이해합니다 (죄송합니다, Linux 또는 Cygwin 등은 랩톱에 설치할 수 없습니다). 이것이 내 인생을 더 쉽게 만들어 줄 수 있기 때문에 어떤 도움이라도 대단히 감사하겠습니다!

답변:


19

Putty는 ssh 터널을 지원합니다. Connection, SSH 트리를 확장하면 터널에 대한 항목이 표시됩니다.

로컬 터널은 Windows 시스템에서 지정한 IP 주소 및 포트에 대해 원격 인 로컬 호스트 포트를 생성합니다. 예를 들어, 집의 데스크탑에 RDP를 시도 할 때 일반적으로 7789와 같은 임의의 로컬 포트를 선택한 다음 데스크탑의 로컬 IP 주소 (1.2.3.4:3389)를 원격으로 설정합니다. 주최자. "추가"를 클릭 한 다음 "적용"을 클릭하십시오. 이 시점에서 127.0.0.1:7789로 rdp를하면 퍼티 세션을 통해 1.2.3.4:3389에 연결됩니다.

재미있는 곳이 여기에 있습니다. 그런 다음 퍼티에 원격 포트로 지정한 로컬 포트를 설정하고 중간 상자에 포트 터널을 설정하면 퍼티를 통해 퍼티를 통해 바운스 할 수 있습니다. 여전히 몇 가지 ssh 연결을 수행해야하지만 일단 설정되면 Windows 시스템에서 직접 vnc 또는 rdp를 교차 할 수 있습니다.

  1. 퍼티의 터널 패널로 이동하십시오 (ssh 세션이 이미 활성화되어있는 경우 컨텍스트 메뉴에서 또는 퍼티를 시작할 때 시작 연결 화면에서 연결-> SSH-> 터널)
  2. 로컬 소스 15900 및 원격 소스 127.0.0.1:15900으로 터널을 만듭니다.
  3. 아직 연결되지 않은 경우 Gateway1에 연결하십시오.
  4. Gateway1에서 ssh -L 127.0.0.1:15900:VNCServerIP:5900 user @ Gateway2
  5. Gateway2에 대한 ssh가 가동되면 vnc를 127.0.0.1:15900으로 시도하십시오. 이제 먼쪽에 VNC 화면이 나타납니다!

추가 보너스 -많은 사람들이 이것을 알고 있지는 않지만이 프로세스는 IPv6 / IPv4 트래픽을 프록시하는 데 사용될 수도 있습니다. SSH는 터널에 사용하는 프로토콜을 신경 쓰지 않으므로 ssh 서버가 이중 스택 (IPv4 및 IPv6 주소 모두 있음)이기 때문에 이론적으로 IPv4 전용 시스템에서 IPv6 전용 호스트에 액세스 할 수 있습니다.


15

두 홉 모두에 PuTTY를 사용하려는 경우 다른 방법이 있습니다. 이 예에서는 게이트웨이 # 1 (10.0.1.123)에서 게이트웨이 # 2 (10.0.1.456)로 10.0.1.789의 포트 80으로 호핑합니다.

  1. 먼저 게이트웨이 # 1에 대한 홉을 만듭니다. 먼저 첫 번째 서버에 대한 연결을 설정하십시오. 연결> SSH> 터널에서 두 번째 게이트웨이로 터널을 설정하십시오. 이 예에서는 포트 2222를 두 번째 게이트웨이로 전달합니다.

    servert에 연결

    터널을 세우다

  2. 이제 두 번째 홉을 설정하겠습니다. 첫 번째 게이트웨이를 통해 다음 게이트웨이로 터널링하고 두 번째 게이트웨이에서 포트 포워딩을 설정합니다. 포트 2222의 localhost에 연결합니다. 실행중인 ssh 연결을 통해 두 번째 홉으로 터널링합니다. 이 연결에서 포트 3333에서 10.0.1.789로 포트 포워드를 설정합니다.

    여기에 이미지 설명을 입력하십시오

    여기에 이미지 설명을 입력하십시오

  3. 이제 브라우저를 열고 127.0.0.1:3333으로 이동하면 두 개의 SSH 연결을 통해 10.0.1.789:80으로 터널링됩니다.


1
SSH-> 터널 메뉴에 구성된 두 개의 터널이있는 단일 퍼티 세션 하나를 사용하여 동일한 결과를 얻을 수있는 방법이 있습니까? 이런 식으로 퍼티 인스턴스를 하나만 열면됩니까?
ulrich
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.