🀄
AWS プライベートVPC内のDBに安全に接続する
準備するもの
- EC2
- Session Manager
- Aurora
EC2
パブリックVPC内にEC2を用意します。
気が向いたら詳細は後ほど記載します。
Aurora
プライベートVPC内に用意します。
詳細は後ほど記載します。
Session Manager
こちらのサービスを使うことで、EC2のポートを開けたり、SSH キーを管理したりする必要がなくなります。
セットアップ手順を参考にセットアップする。
Homebrewでpython3インストールしていたため、以下コマンドで実行。
sudo /usr/local/bin/python3 sessionmanager-bundle/install -i /usr/local/sessionmanagerplugin -b /usr/local/bin/session-manager-plugin
以下を実行することで、localhost経由でDBアクセス
aws ssm start-session \
--target <踏み台EC2のインスタンスID> \
--document-name AWS-StartPortForwardingSessionToRemoteHost \
--parameters '{"host":["<RDSエンドポイント>"], "portNumber":["<リモートポート>"], "localPortNumber":["<ローカルポート>"]}'
DBパスワードはSecrets Managerで補完しているので、取得する。
DBクライアント(DBeaver)で接続する絵。ローカルポートを13306で設定。
Discussion