SSH 터널 이해 있습니다. 해당 서버에는 포트

ssh (포트 22)를 통해서만 루트 액세스 권한이있는 Linux (Ubuntu) 서버가 있습니다. 해당 서버에는 포트 3306에서 수신 대기하는 MySQL 데이터베이스가 있습니다. 퍼티 (내 컴퓨터) 및 터널링 (리눅스 컴퓨터)을 사용하여 내 컴퓨터의 로컬 포트 ​​(예 : 4000)에서 터널을 생성 할 수 있습니까? 포트 22의 Linux 서버 다음 포트 3306의 서버 자체?



답변

스케치를 그렸습니다

ssh tunnel 명령이 입력 된 머신 (또는 터널링이있는 Putty가 시작된 머신)은 »host 입니다.

로컬에서 시작하는 ssh 터널


원격에서 시작하는 ssh 터널

소개

  1. 현지: -L Specifies that the given port on the local (client) host is to be forwarded to the given host and port on the remote side.

    ssh -L sourcePort:forwardToHost:onPort connectToHost의미 : ssh로 연결하고 connectToHost모든 연결 시도를 라는 컴퓨터 의 로컬 sourcePort 포트 onPort로 전달하십시오. 이 포트 는 컴퓨터 forwardToHost에서 도달 할 수 있습니다 connectToHost.

  2. 먼: -R Specifies that the given port on the remote (server) host is to be forwarded to the given host and port on the local side.

    ssh -R sourcePort:forwardToHost:onPort connectToHost의미 : ssh to connectToHost에 연결하고 모든 연결 시도를 원격 컴퓨터 로 전달하여 로컬 컴퓨터에서 도달 할 수있는 컴퓨터의 sourcePort포트 onPort로 전달하십시오 forwardToHost.

당신의 예

첫 번째 이미지는 상황을 나타냅니다. 파란 상자 는 내 이미지에서 your host호출 remotehost된 우분투 서버에 퍼티를 시작하는 Windows 컴퓨터입니다 . 녹색 포트 (귀하의 포트 번호 4000)에 대한 연결 3306localhostUbuntu 서버 시스템 (즉, Ubuntu 서버 자체) 의 분홍색 MySQL 포트 로 전달됩니다 .

퍼티로 설정하려면

퍼티를 시작하고 일반적인 연결 설정 (호스트 이름 또는 IP 주소)을 입력하십시오. 왼쪽의 트리에서

연결 → SSH → 터널

소스 포트 (이미지에서 123)와 대상 (이미지에서 localhost : 456 ) 으로 새 로컬 터널을 만듭니다 .4000localhost:3306

추가 를 클릭하는 것을 잊지 마십시오 .

그런 다음 세션으로 돌아가서 저장 을 클릭 하여 다음에 설정을 유지하십시오. 이제 저장된 연결을 사용하여 서버에 로그인 할 수 있으며 성공적으로 로그인 한 후 호스트의 포트 4000에 연결할 때마다 실제로 Ubuntu 서버의 포트 3306에 연결됩니다.

퍼티와 정방향 터널을 만들


답변

간단한 대답은 그렇습니다. 그러나 실제로 터널은 컴퓨터에서 시작됩니다. 작동 방식은 서버에 대한 SSH 연결 (보안)을 생성 한 다음 SSH가 사용자 측의 포트를 듣고 들어오는 연결을 전달하도록 지시하는 것입니다. 서버 측. 터널의 대상은 동일한 서버 일 필요는 없습니다. 다른 유효한 주소 일 수도 있습니다.이 주소는 SSH 서버 자체를 실행하는 서버가 아닌 경우 SSH 서버에서 온 것처럼 들어오는 연결을 볼 수 있습니다. 당신의 클라이언트에서.

이를 설정하려면 Putty 구성 대화 상자를 열고 서버에 액세스하는 데 일반적으로 사용하는 연결 설정을 선택한 다음 “로드”( “열기”아님)를 클릭하십시오. 그런 다음 왼쪽의 트리에서 Connection-> SSH-> Tunnels로 이동하여 소스 포트 4000과 대상 “localhost : 3306″을 사용하여 새 “로컬”터널을 만듭니다 (대상 주소는 서버에서 확인되므로, 서버 관점에서 MySQL 포트는 localhost에 있습니다. 그런 다음 “세션”으로 돌아가서 “저장”을 클릭하여 다음에 설정을 유지하십시오. 이제 저장된 연결을 사용하여 서버에 로그인 할 수 있으며 성공적으로 로그인 한 후 컴퓨터의 포트 4000에 연결할 때마다 실제로 서버의 포트 3306에 연결됩니다.

터널을 심각하게 사용하고 MS-Windows 클라이언트를 실행하는 경우 퍼티 콘솔을 사용하지 않고도 퍼티를 사용하여 터널을 쉽게 설정하고 실행하는 퍼티 터널 관리자 를 살펴 보시기 바랍니다 .


답변