🎅🦌こちらは ZYYX Advent Calendar 2023/12/16の記事です。✨🎄✨
はじめに
今後もうやることはない作業かもですが、RDS認証局証明書の更新作業( rds-ca-2019
から rds-ca-rsa2048-g1
)について備忘録として残しておこうと思います。(というか私のQiita記事はほぼ自分向けの備忘録…)
概要
2023年8月末、
[アクションが必要] 2024 年 8 月 22 日までに Amazon RDS 証明書と Amazon Aurora SSL/TLS 証明書を更新してください
といったメールが手元に何通も何通も飛んできました。
RDSのDBインスタンスに設定されているCA証明書の期限が切れるから更新してね、というお知らせです。(2019年10月にも、 rds-ca-2015
から rds-ca-2019
への変更対応がありました)
手順としてはRDSの「DB インスタンス証明書」の変更を、AWSコンソール上で操作するのみ。
ただ、DBエンジンの種類・バージョンによってはRDSの再起動が発生します。
この場合、本番稼働しているデータベースでは再起動のタイミング調整が必要です。
手順
最初に、変更対象のデータベースについて変更後に再起動が発生するかどうかを確認しましょう。AWSコンソール画面の「RDS」で、左側メニュー内下部にある「証明書の更新」をクリックします。
「証明書の更新が必要なデータベース(件数)」画面にて該当データベースの「再起動が必要です(英語ではRestart Required)」列をチェック。
MySQLは古いバージョンだと再起動が発生するみたいです。
SQL ServerやMariaDBではバージョン問わず再起動が発生するみたいです。
AWSコンソール画面の「RDS」で、該当データベースの「接続とセキュリティ」タブより状態を確認。 rds-ca-2019
を設定してました。期限は2024/08/23。
該当データベースの「変更」ボタンを押して変更画面に入ります。
認証機関で、 rds-ca-2019
から rds-ca-rsa2048-g1
に変更し、「続行」を押します。
次回の定期メンテナンス時間帯に適用か、即時適用かを選び「DBインスタンスを変更」を押します。
変更が適用されたら、表示内容も変わっていました。
補足
証明書は rds-ca-rsa2048-g1
の他に、期限が100年後の rds-ca-rsa4096-g1
rds-ca-ecc384-g1
が選択可能でした。(Oracle、SQL Serverは rds-ca-ecc384-g1
は選択不可)
rds-ca-rsa4096-g1
と rds-ca-ecc384-g1
は秘密鍵のアルゴリズムが今の rds-ca-2019
で使用している RSA2048
から、 RSA4096
や ECC384
に変わりますが、クライアント側で対応できてないなどの問題が発生するかも知れません。
なるべく他に影響が出ないようにしたいケースでは rds-ca-2019
と同じアルゴリズムの RSA2048
を使用している rds-ca-rsa2048-g1
に変更するのがよいかと思います。
おわりに
作業に入る前は、とりあえず期限の長いものを選べばいいのかな〜、とか思ってたのですが、調べてみると色々な情報が出てきて勉強になりました。
間違いのないように、分からないことは勘を頼りに突き進む…😅のではなく、ちゃんと調べる癖をつけておこうと思います。