22
20

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

AWS RDSを外部接続可能にする手順

Posted at

前書き

検証のため開発環境RDSを端末から繋ぎたいということがある。
(通常はproxy経由で接続してもらったりしているのだが、それもできない場合)
その時の設定手順とハマるポイントをまとめたので記載します。

設定手順

今回はDBのクローンで作ります

  • クローンの作成を選択
    image.png

  • ネットワーク&セキュリティを設定
    サブネットグループ: publicアクセス可能なものを選択
    パブリックアクセシビリティ: はいを選択
    image.png

  • セキュリティグループ
    インバウンドで3306ポート(MySQLなら)を接続可能にしたセキュリティグループを設定します
    この時ソースを0.0.0.0/0にすることは絶対にやめましょう
    信頼できるIPからのみ接続可能にしてください

image.png

確認

  • digコマンドでRDSのエンドポイントにGIPが設定されていることを確認しましょう
dig hogehoge.rds.amazonaws.com
  • MySQL接続確認
mysql -hhogehoge.rds.amazonaws.com -uhogehoge -ppassword

期待通り接続できればOKです。

もし、Timeoutするような(遅くても10秒以上接続にかかる)反応が見えた場合はルーティング周りの設定を疑って見てください。すぐに応答があればセキュリティグループやmysqlコマンド周りを疑ってみてください。

ハマりポイント

サブネットグループはpublicアクセス可能なものを選択しましょう
具体的にはVPCのサブネットでインターネットゲートウェイをルートテーブルの関連付けに設定しているものを作ります
※グループを作るので最低2つ必要です

image.png

RDSのサブネットグループで作成したサブネットでDBサブネットグループを作成します
これをネットワーク&セキュリティを設定で選択します

あとがき

今回開発環境DBを一時的に設定しましたが、もし本番環境DBもやるとなると暗号化とかIAMとかしっかり設計しないといけないと思います。この手順はセキュリティという面では不足しているのでそれを理解した上で利用してください。

22
20
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
20

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?