Amazonから2020年2月5日までにお客様のAmazon RDS SSL/TLS証明書の更新を行ってくださいという重要なお知らせが届いたので、具体的に何をすれば良いのか調べました。
届いたメールにSSL/TLS 証明書の更新についてのリンクがありましたので、こちらを確認しました。(本記事ではRDSのやり方をまとめましたが、Auroraもほぼ同じやり方のようです)
準備
データベースの変更を行う前に、データベースへ接続するクライアント側の更新を行います。私の場合EC2インスタンスからデータベースへアクセスするときにSSL接続するので、EC2インスタンスへ新しい証明書をダウンロードしました。
以下のリンクにダウンロード先が記載されています。
EC2インスタンスへログインし、wgetコマンドを実行しました。
(今回はrds-ca-2019へ証明書をアップデートするのでrds-ca-2019-root.pemをダウンロードしました。)
$ wget https://s3.amazonaws.com/rds-downloads/rds-ca-2019-root.pem



準備が終わったら、AWSマネジメントコンソールからデータベースの変更を行います。
1)RDSのコンソール画面でデータベースを選択し「変更」ボタンをクリックする
AWSマネジメントコンソール⇒RDS⇒データベースを選択し「変更」ボタンをクリックします。



2)認証機関の項目で”rds-ca-2019”を選択します。



”rds-ca-2019”を選択すると項目下に青枠で英語のメッセージが表示されます。



↓青枠内をGoogle翻訳しました。
「CA証明書のローテーションをスケジュールする前に、データベースに接続するクライアントアプリケーションを更新して、新しいCA証明書を使用します。これを行わないと、アプリケーションとデータベース間の接続が中断されます。」
→データベース接続するクライアントのアプリケーションや証明書も更新しないといけないという注意でした。
本記事の最初の準備で、すでにクライアントの証明書もダウンロードしたので「次へ」ボタンをクリックします。
3)DBインスタンスの変更
DBインスタンスの変更を次のメンテナンスウィンドウで適用するか、すぐに適用するかを選択し「DBインスタンスの変更」ボタンをクリックします。
今回は「すぐに適用」を選択しDBインスタンスの変更を行いました。
(こちらを選択するとすぐにデータベースが再起動されます。時間を指定して行いたい場合はメンテナンスウィンドウで日時の設定をしてください。)



Amazon RDS SSL/TLS証明書の更新は以上で終了です。
データベースが複数ある場合は、1)~3)をデータベースの数だけ行う必要があります。
今回、DBのシャットダウンから再起動まで10秒ほどかかりました。
4)動作確認
クライアントの証明書をダウンロードしたEC2へログインし、新しい証明書を使ってmysql接続できることが確認できました。


