[Network] Local Port Forwarding

2025. 1. 10. 10:00·CS/Network

1. 로컬 포트 포워딩이란?

로컬 포트 포워딩은 네트워크에서 데이터를 로컬 시스템의 특정 포트로 전달하고, 그 포트를 원격 서버로 연결하는 방식입니다. 이를 통해, 예를 들어 원격 서버에 있는 데이터베이스나 웹 애플리케이션을 로컬에서 마치 로컬 서버처럼 접근할 수 있습니다.

2. 로컬 포트 포워딩 기본 명령어

SSH를 사용하여 로컬 포트 포워딩을 설정할 수 있습니다. 기본적인 형식은 아래와 같습니다:

ssh -L <local-port>:<remote-host>:<remote-port> <username>@<remote-host>
  • : 로컬 시스템에서 사용할 포트 번호 (예: 8080).
  • : 원격 서버의 호스트명이나 IP 주소.
  • : 원격 서버의 서비스 포트 (예: 3306 - MySQL, 80 - HTTP).
  • : 원격 서버의 사용자 이름.

3. 사용 예시

3 - 1. MySQL 데이터베이스 접속 예시

ssh -L 3306:localhost:3306 user@remote-server

이 명령은 원격 서버의 MySQL(3306 포트)을 로컬의 3306 포트로 포워딩합니다. 이제 로컬에서 localhost:3306을 통해 MySQL에 접근할 수 있습니다.

웹 애플리케이션 접속 예시:

ssh -L 8080:localhost:80 user@remote-server

이 명령은 원격 서버의 80번 포트를 로컬의 8080번 포트로 포워딩합니다. 로컬에서 http://localhost:8080으로 웹 애플리케이션에 접근할 수 있습니다.

3 - 2. Jump Host가 있는 경우 -J

원격 서버에 직접 연결할 수 없고, 중간에 다른 서버(점프 호스트)를 통해 연결해야 할 때 사용합니다.

예를 들어, 서버 A에 직접 연결할 수 없고, 서버 B를 통해서만 연결할 수 있다면 다음과 같이 사용합니다:

ssh -J user@jump-host -L 8080:localhost:80 user@remote-server

이 명령은 먼저 jump-host에 SSH로 연결하고, 그 후 remote-server에 포워딩된 포트를 연결합니다.

3 - 2. SSH 카 파일이 있는 경우 -i

SSH 접속 시 암호 대신 SSH 키 파일을 사용하고 싶을 때 사용합니다. 예를 들어, 키 파일이 ~/.ssh/id_rsa라면 다음과 같이 입력합니다:

 

ssh -i ~/.ssh/id\_rsa -L 8080:localhost:80 user@remote-server

이 명령은 SSH 키 파일을 사용해 remote-server에 접속한 뒤 로컬 포트 포워딩을 설정합니다.

4. 마무리

로컬 포트 포워딩은 원격 서버의 서비스를 로컬에서 쉽게 이용할 수 있게 해주는 유용한 기능입니다. -J와 -i 옵션을 함께 사용하면, 점프 호스트를 거쳐 연결하거나 SSH 키 파일을 활용하여 보안을 강화할 수 있습니다.

반응형

'CS > Network' 카테고리의 다른 글

[Network] 다양한 API 설계 방식(REST, GraphQL, gRPC)  (1) 2024.12.09
'CS/Network' 카테고리의 다른 글
  • [Network] 다양한 API 설계 방식(REST, GraphQL, gRPC)
JJuuuunn
JJuuuunn
  • JJuuuunn
    JJuuuunn
    JJuuuunn
  • 전체
    오늘
    어제
    • 분류 전체보기 (70)
      • Backend (7)
        • Java (7)
      • Frondend (48)
        • Vue.js (12)
        • JavaScript (21)
        • Css (1)
      • Infra (0)
      • Git (2)
      • CS (5)
        • DataBase (0)
        • Network (2)
        • OS (0)
        • Algorithm (0)
      • 리뷰 (5)
        • 강의 (1)
        • Books (4)
      • ETC (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    frontend
    깊은 감시
    Watch
    API
    신세계i&c
    axios
    혼공컴운
    Vue.js
    자바스크립트
    혼자 공부하는 컴퓨터구조+운영체제
    KDT
    Java
    Network
    이벤트
    렌더링
    자바
    javascript
    객체
    HTML
    VUE
  • 최근 댓글

  • 최근 글

  • 반응형
  • hELLO· Designed By정상우.v4.10.1
JJuuuunn
[Network] Local Port Forwarding
상단으로

티스토리툴바