1. 개요

AWS VPC 네트워크(프라이빗 네트워크) 보안 접근을 위해 원격 서버를 이용한 포트 포워딩과 SSH 터널링으로 데이터베이스(DB)에 접근하는 방법을 기술합니다.

2. 방법

1) 원격 서버에서의 설정

원격 서버에서 ncat 명령어를 사용하여 포트 포워딩을 설정합니다. 아래 명령어를 실행하세요:

ncat --sh-exec "ncat 10.0.3.123 5432" -l 5432 --keep-open

이 명령어는 원격 서버의 5432 포트를 통해 AWS RDS 인스턴스(10.0.3.123:5432)에 연결합니다.

2) 로컬 PC에서의 SSH 터널링 설정

SSH 터널링을 통해 로컬 PC에서 원격 서버를 통해 RDS 인스턴스에 접근합니다. 아래 설정을 SSH 클라이언트에 적용하세요:

  • 호스트: 원격 서버의 IP 주소 또는 도메인
  • 사용자 이름: 원격 서버의 사용자 이름
  • 포트: 22 (기본 SSH 포트)

SSH 터널링 설정:

  • 로컬 포트: 5432 (로컬에서 접근할 포트)
  • 원격 호스트: 127.0.0.1 (원격 서버 내에서의 호스트)
  • 원격 포트: 5432 (원격 서버에서 ncat이 리스닝하는 포트)

SSH 클라이언트 예제 (PuTTY의 경우):

  1. Session: 원격 서버의 IP 주소와 포트 22를 입력.
  2. Connection > SSH > Tunnels:
    • Source port: 5432
    • Destination: 127.0.0.1:5432
    • "Add" 버튼 클릭
  3. Session으로 돌아가서 "Open"을 클릭하여 연결.

이제 로컬 PC에서 localhost:5432로 접근하면 원격 서버를 통해 AWS RDS에 접속할 수 있습니다.

이 과정을 통해 AWS VPC의 프라이빗 네트워크 내의 RDS 인스턴스에 안전하게 접근할 수 있습니다.

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기