SSH 
-리눅스 : 기본적으로 ssh client와 ssh server가 내장 설치되어 있음.
-윈도우: 기본적으로 제공X, putty, Xshell 설치 후 사용

tunneling
- ssh의 중요기능 
-forwarding과 비슷함

출처: https://hbase.tistory.com/328#recentEntries

원래는 Host A가 Host B에 direct connection(직접 접근) 하는 경우가 많은데, (App Client → App Server)

SSH 터널링 이용시 HostA가 SSH  Client에 접속 후 데이터를 Host B의 SSH 서버를 통해 HostB에 전달한다. 

왜 굳이 직접 접근 안하고 터널을 거쳐서 사용하는가?
▶ 서버에서 listen하고 있는 포트번호가 방화벽에 의해 막혀서 접근 불가한 경우에 사용됨. (22번 제외하고 모두 막아버리는 경우가 있음.)
▶암호화를 지원하지 않는 경우에도 안전한 암호화 통신을 통해 데이터 전달

tunneling 종류
1. local tunneling : ssh client가 내부 로컬에 특정 포트 바인딩
2. remote tunneling : ssh server가 외부로 특정 포트 바인딩
3. dynamic tunneling 

 

1. Local Tunneling

ex)

$ ssh -L 1234:HostB:8080 user@hostB

1. HostA에서 listen할 포트 번호 지정 1234

2. ssh client는 사용자가 지정한 포트번호 1234 검사

3. application client가 포트번호 1234로 접속

4. ssh client는 데이터를 HostB의 ssh server에 전송

5. HostB의 ssh server는 8080포트번호를 통해 HostB의 application server에 데이터 전송

즉, HostA:1234를 접속하면 HostB:8080에 접속한 화면이 보인다. 

 

2. Remote Tunneling

외부에서 접속 불가, 외부로 접속은 가능한 경우에..

서버 HostB측에서 클라이언트 HostA쪽으로 ssh 연결 만들기 

$ ssh -L 1111:HostB:8080 user@hostB

1. HostB에서 1111 포트번호 listen 하라고 ssh server에게 지시

2. ssh server는 포트번호 1111로 오는 요청을 HostA의 ssh client에게 전달 

3.  HostA의 ssh client는 데이터 전송시 HostB 8080으로 데이터 전달

 

둘의 가장 큰 차이점은,

Local tunneling : ssh client가 listen

Remote tunneling : ssh server가 listen

공통점 : 터널링 시작시 미리 연결 포트를 알고 있어야 함. 1:1 연결

 

3. Dynamic tunneling

터널링 시작되면 자유롭게 포트 포워딩이 가능한 터널링, 여러 포트와 연결가능 1:N 매핑

 

$ ssh -N -D PORT USER@hostB

터널링 시작시에만 접근할 수 있는 포트번호 1개만 지정해주면 여러 다른 포트와 매핑 가능

 

 

 

 

 

 

 

 

 

 

출처 : https://www.hanbit.co.kr/network/category/category_view.html?cms_code=CMS5064906327 

 

SSH Tunneling 사용하기

SSH(Secure Shell)는 네트워크 보안에 있어 대중적이고 강력한 접근 방식을 제공하기 위해 만들어진 프로토콜이다. SSH에 기반한 제품은 서버와 클라이언트의 한 쌍으로 구성되어 있는데, 보통 사용

www.hanbit.co.kr

https://hbase.tistory.com/328#recentEntries

 

[Linux] ssh 터널링(ssh port forwarding) - Local / Remote / Dynamic Tunneling

sh는 Secure SHell의 줄임말로 원격 호스트에 접속하기 위해 사용되는 보안 프로토콜이다. 당연하게도 ssh는 원격 호스트로 접속하기 위해 가장 많이 사용된다. 그런데 ssh는 원격 호스트로의 접속과

hbase.tistory.com

'WEB' 카테고리의 다른 글

웹해킹 테스트 게시판 만들기 - 1  (0) 2023.05.24
웹해킹 테스트 게시판 만들기 - 3  (0) 2023.05.24
xp_cmdshell 에 대하여..  (0) 2023.03.06
ubuntu18.04 에 mysql 수동 설치  (0) 2023.01.28
XSS, CSRF, SSRF  (0) 2023.01.11

+ Recent posts