LoginSignup
1
0

Amazon RDS 証明書と Amazon Aurora SSL/TLS 証明書の更新について

Posted at

■まだの方は計画をお早めに!

RDSとAurora SSL/TLS 証明書にて、「rds-ca-2019」を使用している場合は対応が必要になります。
接続障害を防ぐためには、 2024年8月22日 までに証明書の更新が必要です。

影響を受けるリソースのリストは、AWS Health Dashboard の [影響を受けるリソース](Affected resources) タブから確認可能となっています。

更新に必要な作業項目書いていきます↓↓

■まず事前作業

1. アプリケーション側で、DBに対してSSL/TLS接続を使用しているかの確認

例えば、EC2インスタンスからRDSへ接続する際に使用している…などのケース

2. SSL/TLS接続を使用している場合は、新しい SSL/TLS 証明書をダウンロードする

(ここは詳しい事分りません…)

3. 対象DBインスタンスが、証明書更新時に自動で再起動されるバージョンかどうか確認する

確認方法は以下です

Cloudshellで以下コマンドを実行すると、実行ユーザのホームディレクトリに DB-Certificate-Restart.csv が出力されます。
(実行するアカウントはどのアカウントでも大丈夫です)

aws rds describe-db-engine-versions \
  --query "DBEngineVersions[?SupportsCertificateRotationWithoutRestart==\`false\`].[Engine, EngineVersion, DBEngineDescription]" \
  --output json | jq -r -c '.[] | @csv' > DB-Certificate-Restart.csv

CSVに記載されているエンジンバージョンは、証明書更新後に 自動で再起動されます
記載されていないエンジンバージョンは、 自動で再起動されません

作業後すぐに証明書の更新を適用するためには、証明書の更新後、手動で再起動する必要があります。

参考URL:
https://dev.classmethod.jp/articles/dbengine-no-support-certificate-rotation-without-restart/

■当日の作業

1. SSL/TLS接続を使用している場合は、新しい SSL/TLS 証明書を使用するようにアプリケーションを更新する

2. AWSコンソール側で、DBインスタンスの証明書を更新する

3. 自動で再起動が行われるエンジンバージョンのDBインスタンスは、再起動が行われることを確認する。(自動じゃない場合、手動で再起動)

4. SSL/TLS接続を使用している場合は、接続確認をする

■AWSコンソール側の作業について

DBインスタンスの証明書更新はスペック変更する手順と同じ流れで変更できます。

現状「rds-ca-2019」 を使用している場合は 
「rds-ca-rsa2048-g1」 が互換性のある証明書になるので基本的にはこれになる。

想定されるダウンタイムについて↓

マルチAZ有り → 通常60秒程
マルチAZ無し → 数分程(一般的には5~10分程度です。)

■SSL/TLS接続を使用しているかの確認方法

SSL証明書を使用するかどうかは接続の方法により違います。
以下は一例です。

・コマンドでRDSに接続する場合

SSL接続を使用する接続コマンドで接続している場合は、SSL証明書のアップデートにより影響がある可能性があります。
使用している証明書がrds-ca-2019である場合は、証明書の更新が必要になります。

・SSL接続を使用しない接続コマンド例
mysql -h mysql–instance1.123456789012.us-east-1.rds.amazonaws.com -P 3306 -u mymasteruser -p

・SSL接続を使用する接続コマンド例
mysql -h mysql–instance1.123456789012.us-east-1.rds.amazonaws.com --ssl-ca=global-bundle.pem --ssl-mode=REQUIRED -P 3306 -u myadmin -p

参考用:
https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/mysql-ssl-connections.html#USER_ConnectToInstanceSSL.CLI

・MySQL Workbench から接続する場合

[Connect to Database (データベースに接続)] ウィンドウの、[SSL]タブにてSSL/TLS 接続の設定を行っているかどうかをご確認ください。
使用している証明書がrds-ca-2019である場合は、証明書の更新が必要となります。

参考用:
https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_ConnectToInstance.html#USER_ConnectToInstance.MySQLWorkbench

その他参考記事

SSL/TLS 証明書を今すぐローテーションしましょう – Amazon RDS と Amazon Aurora については 2024 年に期限切れになります
https://aws.amazon.com/jp/blogs/news/rotate-your-ssl-tls-certificates-now-amazon-rds-and-amazon-aurora-expire-in-2024/

SSL を使用して MySQL DB インスタンスに接続しているアプリケーションがあるかどうかの確認
https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/ssl-certificate-rotation-mysql.html#ssl-certificate-rotation-mysql.determining-server

RDS認証局証明書更新作業
https://qiita.com/kosuge/items/46b9a13c0647a7d854fd

以上、参考になれば!

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