hhkb.dev

BLOG

2025-11-04 / 모의해킹기초 · 03

터널링과 포트포워딩

1. 터널링(Tunneling)이 필요한 이유

터널링은 방화벽으로 분리된 내부망에 접근 경로를 만들거나, 중간 경로를 통해 트래픽을 우회해서 전달할 때 쓰는 기본 개념이다.

특히 내부망 점검에서는 자주 등장하는 핵심 기초다.

2. SSH Local Port Forwarding (로컬 포워딩)

핵심 개념은 "내 PC의 특정 포트를, 원격 서버를 거쳐 다른 곳에 연결한다"는 구조다.

예를 들어, 내 PC가 방화벽 바깥에 있고 내부망 DB(3306)에 붙어야 할 때 쓴다.

# 내 PC 3306 -> SSH Server -> Target 3306
ssh -L 3306:target_internal_ip:3306 user@ssh_server

이렇게 열어두면 내 PC의 localhost:3306에 접속했을 때, 실제로는 내부망 DB로 연결된다.

3. SSH Dynamic Port Forwarding (다이내믹 포워딩)

이 방식은 "내 PC 쪽에 SOCKS 프록시를 하나 만든다"고 이해하면 쉽다.

특정 포트 하나가 아니라, 브라우저나 도구 전체 트래픽을 우회하고 싶을 때 자주 쓴다.

ssh -D 9090 user@ssh_server

그다음 브라우저나 도구 프록시 설정에서 SOCKS5 Proxy: 127.0.0.1:9090만 맞추면 된다.

이후에는 해당 트래픽이 ssh_server를 거쳐 나가게 된다.