LoginSignup
0
0

More than 3 years have passed since last update.

AWS プライベートサブネットのRDSに踏み台経由でプログラムからアクセスする

Posted at

はじめに

この記事は、社会人2年目 AWS、python初心者が勉強したことをまとめたものです。
間違っている点、改善点等ございましたご指摘いただけると大変ありがたいです。

この記事について

踏み台サーバを経由してセキュアにRDSに接続する構成は多いのではないでしょうか?

プライベートサブネットに存在するRDSにパブリックサブネットの踏み台経由で
ローカルのプログラムからアクセスする方法がわかります。
似たような記事はたくさんありますが、自身の備忘録として投稿しておきます。

image.png

手順

踏み台サーバにポートフォワーディングを設定


ssh -i 踏み台サーバの秘密鍵 踏み台のユーザ名@踏み台のIP -L 任意のポート:RDSエンドポイント:3306

例:
ssh -i sushi.pem sushi@22.22.22.22 -L 13306:dev-rds-endpoint.ap-northeast-1.rds.amazonaws.com:3306

実行プログラム

pythonのpymysqlを使用してRDSに接続します。

rds_access.py

connection = pymysql.connect(host = '127.0.0.1',
                             user = 'rds_user',
                             password = 'password',
                             db = 'sushi',
                             charset = 'utf8mb4',
                             port = 13306, # ポートフォワーディングで設定したport
                             cursorclass=pymysql.cursors.DictCursor)


with connection.cursor() as cursor:
    sql = "select * from SushiInfo"
    cursor.execute(sql)
    result = cursor.fetchall()

接続できました!!

0
0
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
0
0