3가지 포트포워딩 방식
| 방식 | 명령 플래그 | 용도 |
|---|---|---|
| 로컬 (Local) | -L | 로컬 포트 → 원격 서비스 접속 |
| 원격 (Remote) | -R | 원격 포트 → 로컬 서비스 노출 |
| 동적 (Dynamic) | -D | SOCKS 프록시 (전체 트래픽 터널) |
로컬 포트포워딩 (-L)
패턴: 내 컴퓨터의 포트 → 서버를 경유 → 서버 측 서비스 접속
# 문법
ssh -L [로컬IP:]로컬포트:목적지호스트:목적지포트 서버
# 서버의 PostgreSQL에 로컬에서 접속
ssh -L 15432:localhost:5432 [email protected]
# 이제 로컬에서: psql -h localhost -p 15432 -U admin
# 방화벽 뒤 Redis 접속
ssh -L 16379:10.0.1.5:6379 [email protected]
# redis-cli -h localhost -p 16379
# 여러 포트 동시에
ssh -L 15432:localhost:5432 -L 16379:localhost:6379 -L 18080:localhost:8080 [email protected]
# 셸 없이 터널만 유지 (-N)
ssh -N -L 15432:localhost:5432 [email protected]
# 백그라운드로 실행 (-f -N)
ssh -f -N -L 15432:localhost:5432 [email protected]원격 포트포워딩 (-R)
패턴: 서버의 포트 → 로컬 서비스 노출 (NAT 뒤 로컬 서버를 외부에 공개)
# 문법
ssh -R [원격IP:]원격포트:목적지호스트:목적지포트 서버
# 로컬 3000 포트를 서버의 8080으로 노출
ssh -R 8080:localhost:3000 [email protected]
# 이제 public-server.example.com:8080 접속 → 내 localhost:3000
# 서버 측 /etc/ssh/sshd_config 설정 필요
# GatewayPorts yes # 외부에서 원격 포트 접속 허용동적 포트포워딩 (-D) — SOCKS 프록시
패턴: 로컬 포트를 SOCKS5 프록시로 — 모든 트래픽을 서버 경유
# SOCKS5 프록시 시작 (로컬 1080 포트)
ssh -D 1080 [email protected]
# 또는 백그라운드
ssh -f -N -D 1080 [email protected]
# curl로 SOCKS5 프록시 사용
curl --socks5 localhost:1080 https://example.com
# 브라우저 설정:
# Firefox → 설정 → 네트워크 → SOCKS5 프록시 localhost:1080~/.ssh/config로 터널 자동화
# 접속 시 자동으로 DB 터널 열기
Host prod-with-tunnel
HostName prod-server.example.com
User deploy
LocalForward 15432 localhost:5432
LocalForward 16379 localhost:6379
# 점프 호스트를 통한 터널
Host internal-via-bastion
HostName 10.0.1.50
User ubuntu
ProxyJump bastion
LocalForward 18080 localhost:8080# 설정 후 한 번에 접속 + 터널
ssh prod-with-tunnel터널 프로세스 관리
# 실행 중인 SSH 터널 확인
ps aux | grep "ssh -"
# 또는
ss -tlnp | grep ssh
# 특정 포트의 터널 종료
pkill -f "ssh -N -L 15432"
# autossh로 터널 자동 재연결
sudo apt install -y autossh
autossh -M 0 -f -N -L 15432:localhost:5432 [email protected]이 가이드는 AI 도구를 활용해 초안을 구성하고 사람이 명령어·문맥을 검토해 발행했습니다. 운영체제와 도구 버전에 따라 결과가 달라질 수 있으므로 적용 전 공식 문서를 함께 확인하세요. 오류를 발견하시면 이메일로 제보해 주세요.
질문 & 답변 (Q&A)
이 가이드에 대해 궁금한 점을 질문해보세요. 확인 후 답변드립니다.