반응형

Local Port Forwarding : Client to Server Port 포워딩 (클라이언트의 특정포트를 서버로)
Remore Port Forwarding : Server to Client 포워딩 (서버의 특정포트는 클라이언트로)



http://kanie.lovlog.net/1500862 에서 발췌..

SSH 터널링이란 - 특정한 포트로 들어오는 IP 패킷을 SSH 접속을 이용해 다른 컴퓨터로 중계해 주는 프로토콜을 가리킵니다. SSH 터널링을 이용하면 방화벽이나 사설망 안에 물려 있어 외부에서 접속이 불가능한 PC에 접속하는 것이 가능합니다.

다음과 같은 시나리오를 예로 들어 보겠습니다.

직장의 사설망 내부에 작업용으로 사용하는 리눅스 PC가 있습니다. 외부에 있는 윈도우 컴퓨터에서 putty로 작업용 PC에 접속하고 싶습니다. 이때 사설망 외부에 SSH 서버가 있다면 터널링을 이용해 작업용 리눅스에 접속할 수 있습니다.

세 대의 컴퓨터가 각각 다음과 같은 이름을 가졌다고 가정합시다.

office_linux_pc : 사설망 내부에서 사용하는 linux pc. 사설 IP는 192.168.0.101 이라고 합시다.
ssh_server : 사설망 외부의 SSH 서버. IP는 147.46.101.102 이고, 계정 이름은 kanie라고 합시다. (도메인 이름이 있다면 ip 대신 도메인 이름을 사용해도 됩니다.)
home_windows_pc : 외부에 있는 윈도우 컴퓨터. 인터넷에 접속만 가능하다면 IP는 무관합니다.

필요한 프로그램은 다음과 같습니다.
office_linux_pc : 이 컴퓨터에 SSH로 접속하고 싶은 것이니만큼 SSH 서버가 필요하겠죠. HTTP로 접속하고 싶다면 역시 HTTP 서버가 필요합니다. 서버가 설치되어 있다면 루트 권한이 필요하지는 않습니다.
ssh_server : SSH 서버가 필요합니다. root 권한을 가질 필요는 없습니다.
home_windows_pc : 윈도우용 SSH 클라이언트인 putty를 설치합시다. putty와 같이 따라오는 윈도우 커맨드라인용 ssh 클라이언트인 plink도 필요합니다.

office_linux_pc에서 ssh_server로 SSH 링크를 엽니다. 147.46.101.102 서버의 3030번 포트로 들어오는 모든 접속을 localhost(이 경우 office_linux_pc가 되겠죠)의 22번 포트로 우회시키는 명령입니다. 22번 대신 80번 포트를 넣으면 외부에서 http 서버에 접속할 수 있습니다.

ssh -R 3030:localhost:22 kanie@147.46.101.102

패스워드를 물어보면 입력하고 접속하면 됩니다.

이제 office_linux_pc를 켜놓고 집으로 갑시다.

home_windows_pc에서 cmd로 콘솔을 열어 다음과 같이 입력합시다. 이번엔 localhost(home_windows_pc)의 4040번 포트로 들어오는 모든 접속을 147.46.101.102 서버의 3030번 포트로 우회시키는 명령입니다.

plink -L 4040:localhost:3030 kanie@147.46.101.102

이제 putty로 localhost:4040 포트에 접속합시다.



office_linux_pc의 ID와 password를 입력하고 접속하면 됩니다.




http://www.zxcasd.pe.kr/tt/entry/ssh-%ED%84%B0%EB%84%90%EB%A7%81 에서 발췌..

ssh 터널링은 공유기나 방화벽 내부의 pc에 접근 할 수 있도록 해준다.

환경
office : 방화벽 안에 있는 피씨 또는 공유기를 사용하는 피씨(192.168.x.x) 처럼 가상 IP를 사용하고 있다.

home : office의 공유기나 방화벽의 밖에 있다.

server : 포워딩 해줄 서버로, office와 home에서 모두 접근할 수 있다.

반응형

'OS > Linux' 카테고리의 다른 글

[link] ln -s  (0) 2010.01.22
ssh 로그인  (0) 2009.12.16
[솔라리스] tar @LongLink 메시지 발생시.  (0) 2009.11.11
서버간 trust 설정. scp 사용.  (0) 2009.10.20
[솔라리스] snmp 설치  (0) 2009.09.14

+ Recent posts