自由気ままに書いちゃおう

好きなことをつらつらと・・・

【AWS】RDSにてパブリックアクセシビリティがないデータベースに接続する

今回は、パブリックアクセシビリティをなしに設定しているRDS(mysql)に対して、リモート接続する方法について紹介します。

■パブリックアクセシビリティとは?

いわゆる、パブリックIPを利用したリモート接続ができるかどうかです。
RDSでデータベース作成時に以下の項目がありますが、これのことです。

f:id:guri2o1667:20210312150417p:plain


RDS作成時、デフォルトでは「なし」に設定されています。

f:id:guri2o1667:20210312150317p:plain

■パブリックアクセシビリティが「なし」の場合、どうやってリモート接続を行うのか

SSHポートフォワードを利用します。

■以降の前提について

・自分のPCからアクセスできるLinuxサーバがあることを前提としています。
 ここではAmazonLinux2(ami-0f27d081df46f326c)を利用しました。
 EIPを利用したアクセスでもいいですし、SystemsManagerを利用した接続でもいいです。

・LinuxサーバからRDSへの接続が可能であること
 ※ルートテーブル、セキュリティグループの設定は実施済みであること

・自分のPCからLinuxサーバにアクセスする際に使うツールはTeraTermです。

・MySQLへの接続にはMySQL Workbenchを利用しています。

■設定方法

1.Linuxサーバにログインします。

2.TeraTermの「設定」>「SSH転送」をクリックします。

f:id:guri2o1667:20210312151134p:plain

3.「追加」をクリックします。

f:id:guri2o1667:20210312151224p:plain

4.「ローカルのポート」が選択されていることを確認します。

f:id:guri2o1667:20210312151240p:plain


5.手順4の画面で以下の通り入力し、「OK」をクリックします。
ローカルのポート: 63306 ※WellKnownポート以外を選択します。
リモート側ホスト: RDSのエンドポイント名 ※RDSダッシュボードの「接続とセキュリティ」タブから確認できます。
ポート: 3306 ※RDSのデータベースに接続するためのポート番号

6.画面遷移後、「OK」をクリックします。
※TeraTermを起動させたままにしてください。

7.MySQLWorkbenchを起動します。

8.接続情報にて以下の通り入力し、画面右下の「Close」をクリックします。

※Hostnameは127.0.0.1を指定してください。
※Portは手順5で入力した「ローカルのポート」を設定してください。
※UsernameはRDS作成時に作成したユーザで構いません。(admin)
f:id:guri2o1667:20210312151655p:plain

9.画面遷移後、設定情報をダブルクリックすることでRDSに接続することができます。

f:id:guri2o1667:20210312151940p:plain

 

■補足

SystemsManager(SessionManager)を利用したLinuxサーバへの接続の場合でも、
RDSへ接続するためにやることは、前述の内容と同じです。
SystemsManagerを利用している場合、Linuxサーバへの接続時にSSHポートフォワーディングを利用していますが、RDSへの接続の時にもSSHポートフォワーディングを利用することができます。 

www.guri2o1667.work

www.guri2o1667.work

www.guri2o1667.work

www.guri2o1667.work

www.guri2o1667.work