はじめに

2023/08末頃、Amazon Web ServiceよりSSL/TLS CA 証明書(rds-ca-2019)を利用するAmazon RDSのデータベースに対してアクションを実行してくださいと通知されました。
これは以下ケースに合致する該当AWSアカウントのAWS Health Dashboardへ通知されていますが、今回は2を対象に更新時の再起動発生有無を確認していきます。

  1. 新規Amazon RDSのデータベースを作成する際に、対象となるCA証明書(rds-ca-2019)を利用するよう設定した
  2. 既存Amazon RDSのデータベースで、対象となるCA証明書(rds-ca-2019)を利用している

確認方法

AWS Management Consoleを利用する場合

適切な権限を持ったIAMユーザーにてAWS Management Consoleへログイン後、ページ左側上部にある検索にRDSと入力し、サービスに表示されたRDSを選択しページを遷移します。

遷移先のページ左側にある証明書の更新を選択します。

遷移先のページで証明書の更新が必要なデータベースにある認証機関rds-ca-2019であることを確認後、再起動が必要ですにてあり/なしを確認します。

今回はrds-ca-2019-test01で再起動されることがわかりました。

AWS CloudShell または AWS CLI を利用する場合

適切な権限を持ったIAMユーザーにてAWS Management Consoleへログイン後、対象のリージョンでAWS CloudShellを起動します。

または適切な権限を持ったIAMユーザーのアクセスキー ID とシークレットアクセスキーを利用できるようaws configureしたAWS CLIを利用できるターミナル環境を準備します。

その後Amazon RDSのデータベースを一覧として表示するために以下コマンドを実行します。

 $ aws rds describe-db-instances --query "DBInstances[].[{Name:DBInstanceIdentifier Engine:Engine EngineVersion:EngineVersion}]" --output table 

次に、EngineをMySQLで絞り以下コマンドを実行し再起動の有無を確認します。

 $ aws rds describe-db-engine-versions --engine mysql --query "DBEngineVersions[].{Engine:Engine EngineVersion:EngineVersion SupportsCertificateRotation:SupportsCertificateRotationWithoutRestart}" --output table 

以下実行結果例の通り、EngineVersionが5.7.44であるrds-ca-2019-test01のみ再起動されることがわかりました。

・実行結果例

終わりに

今回はAmazon RDS for MySQLを対象としたSSL/TLS CA 証明書更新対応時の再起動発生有無について確認しました。

AWS CloudShell または AWS CLI を利用する場合、–engineオプションの文字列を変更することでAmazon Aurora MySQLやAmazon RDS for PostgreSQLといった別のエンジンでも再起動発生有無を確認することが可能です。

2024/08/22までにアクションを実行しなければ、Amazon RDSへの接続にSSL/TLSを用いている場合に接続障害が発生してしまうため、できる限り早めに対応したいと思います。

参考にしたドキュメント/Amazon Web Serviceブログ

SSL/TLS 証明書のローテーション(Amazon RDS)
SSL/TLS 証明書のローテーション(Amazon Aurora)
SSL/TLS 証明書を今すぐローテーションしましょう – Amazon RDS と Amazon Aurora については 2024 年に期限切れになります
AWS CLI Command Reference(describe-db-engine-versions)