EC2를 통해서 RDS에 연결하기 - SSH Tunneling

zooju·2022년 11월 24일
1

현재 내 EC2와 RDS간의 관계는 다음과 같다.

1) 같은 AZ에 있지만, 다른 subnet안에 있고

2) EC2는 Internet Gateway가 연결된 public Subnet에 있고

3) RDS는 Internet Gateway는 연결되지 않고, EC2가 연결되어있는 Private Subnet에 있음

이 상황에서 DataGrip이나 IntelliJ, MySql Workbench 등에서 RDS에 직접 연결할 수 있는 방법은 없다.

하지만, EC2 SSH를 통해 우회적으로 접속할 수 있는데 그 방법이 SSH Tunneling을 이용하는 방법이다.

방법

  • Data Grip, IntelliJ 기준

1) Data Source 추가 버튼 클릭 후, 자신의 DataBase 선택하기

2) SSH/SSl 탭 클릭, Use SSH tunnel 선택

3) ec2 ssh configuration 추가해주기

  • Host: ec2의 ip 주소
  • User name: linux 기반이라면 ec2-user, ubuntu 기반이라면 ubuntu
  • Authentication Type: key pair 방식 선택
  • Private Key File: pem 파일 선택
  • Port: 22

이후 Test Connection으로 문제가 없는지 확인하고 문제가 없다면 OK를 눌러 configuration을 저장해준다.

4) 방금 생성한 SSH Tunnel을 선택해주고

5) General Tap에서 RDS 관련 정보를 기입해준다.

  • Host: RDS endpoint
  • User: admin
  • Password: RDS 비밀번호

이후 Test Connection을 해서 문제가 없으면 OK를 누르면 SSH Tunneling을 통해 RDS에 접속할 수 있게 된다.

profile
이것 저것 새로운 분야에 관심이 많은 서버 개발자

0개의 댓글