[小ネタ]RDS デフォルトに設定された証明書を確認/更新する方法

2024.01.31

こんにちは。
繁松です。

はじめに

RDSのデフォルトに設定されている証明書を確認/更新する方法についてのブログとなります。
デフォルト証明書はAWS CLIから確認/更新することができるので実際にやってみました。

やってみた

デフォルト証明書の確認

CloudShellから確認のコマンドを実行します。

aws rds describe-certificates --region ap-northeast-1

結果

デフォルト設定(DefaultCertificateForNewLaunches)が[rds-ca-2019]に設定されていることを確認できました。

{  
    "Certificates": [  
        {  
            "CertificateIdentifier": "rds-ca-ecc384-g1",  
            "CertificateType": "CA",  
            "Thumbprint": "aef371e2014ce6064513cac92c0c550ab7ccf288",  
            "ValidFrom": "2021-05-25T22:03:16+00:00",  
            "ValidTill": "2121-05-25T23:03:16+00:00",  
            "CertificateArn": "arn:aws:rds:ap-northeast-1::cert:rds-ca-ecc384-g1",  
            "CustomerOverride": false  
        },  
        {  
            "CertificateIdentifier": "rds-ca-rsa4096-g1",  
            "CertificateType": "CA",  
            "Thumbprint": "47104f39034f4722a41ec96c1e9f9ad2342d63db",  
            "ValidFrom": "2021-05-25T21:59:10+00:00",  
            "ValidTill": "2121-05-25T22:59:10+00:00",  
            "CertificateArn": "arn:aws:rds:ap-northeast-1::cert:rds-ca-rsa4096-g1",  
            "CustomerOverride": false  
        },  
        {  
            "CertificateIdentifier": "rds-ca-rsa2048-g1",  
            "CertificateType": "CA",  
            "Thumbprint": "d790bbb661bafa4101829f103d639befa300f9a4",  
            "ValidFrom": "2021-05-25T21:54:58+00:00",  
            "ValidTill": "2061-05-25T22:54:58+00:00",  
            "CertificateArn": "arn:aws:rds:ap-northeast-1::cert:rds-ca-rsa2048-g1",  
            "CustomerOverride": false  
        },  
        {  
            "CertificateIdentifier": "rds-ca-2019",  
            "CertificateType": "CA",  
            "Thumbprint": "d40ddb29e3750dffa671c3140bbf5f478d1c8096",  
            "ValidFrom": "2019-08-22T17:08:50+00:00",  
            "ValidTill": "2024-08-22T17:08:50+00:00",  
            "CertificateArn": "arn:aws:rds:ap-northeast-1::cert:rds-ca-2019",  
            "CustomerOverride": false  
        }  
    ],  
    "DefaultCertificateForNewLaunches": "rds-ca-2019"  
}

コンソールからも確認してみます。
デフォルト証明書が[rds-ca-2019]に設定されていることを確認できました。

私の環境(東京リージョン)ではデフォルト証明書が[rds-ca-2019]に設定されていましたが、2024/1/25以降は[rds-ca-rsa2048-g1]に変更されていくようです。

新しい DB インスタンスを作成する場合、デフォルトの CA は 2024 年 1 月 25 日までは rds-ca-2019 のままですが、その後は rds-ca-rsa2048-g1 に変更されます。

デフォルト証明書の更新

CloudShellから更新のコマンドを実行します。
デフォルト証明書を[rds-ca-rsa2048-g1]に更新します。
デフォルト証明書はリージョンごとに設定する必要があります。

aws rds modify-certificates \  
    --certificate-identifier rds-ca-rsa2048-g1 \  
    --region ap-northeast-1

確認してみます。

aws rds describe-certificates --region ap-northeast-1

結果

[rds-ca-rsa2048-g1]のCustomerOverrideがtrueに、
デフォルト設定(DefaultCertificateForNewLaunches)が[rds-ca-rsa2048-g1]に更新されたことを確認できました。

{  
    "Certificates": [  
        {  
            "CertificateIdentifier": "rds-ca-ecc384-g1",  
            "CertificateType": "CA",  
            "Thumbprint": "aef371e2014ce6064513cac92c0c550ab7ccf288",  
            "ValidFrom": "2021-05-25T22:03:16+00:00",  
            "ValidTill": "2121-05-25T23:03:16+00:00",  
            "CertificateArn": "arn:aws:rds:ap-northeast-1::cert:rds-ca-ecc384-g1",  
            "CustomerOverride": false  
        },  
        {  
            "CertificateIdentifier": "rds-ca-rsa4096-g1",  
            "CertificateType": "CA",  
            "Thumbprint": "47104f39034f4722a41ec96c1e9f9ad2342d63db",  
            "ValidFrom": "2021-05-25T21:59:10+00:00",  
            "ValidTill": "2121-05-25T22:59:10+00:00",  
            "CertificateArn": "arn:aws:rds:ap-northeast-1::cert:rds-ca-rsa4096-g1",  
            "CustomerOverride": false  
        },  
        {  
            "CertificateIdentifier": "rds-ca-rsa2048-g1",  
            "CertificateType": "CA",  
            "Thumbprint": "d790bbb661bafa4101829f103d639befa300f9a4",  
            "ValidFrom": "2021-05-25T21:54:58+00:00",  
            "ValidTill": "2061-05-25T22:54:58+00:00",  
            "CertificateArn": "arn:aws:rds:ap-northeast-1::cert:rds-ca-rsa2048-g1",  
            "CustomerOverride": true,  
            "CustomerOverrideValidTill": "2061-05-25T22:54:58+00:00"  
        },  
        {  
            "CertificateIdentifier": "rds-ca-2019",  
            "CertificateType": "CA",  
            "Thumbprint": "d40ddb29e3750dffa671c3140bbf5f478d1c8096",  
            "ValidFrom": "2019-08-22T17:08:50+00:00",  
            "ValidTill": "2024-08-22T17:08:50+00:00",  
            "CertificateArn": "arn:aws:rds:ap-northeast-1::cert:rds-ca-2019",  
            "CustomerOverride": false  
        }  
    ],  
    "DefaultCertificateForNewLaunches": "rds-ca-rsa2048-g1"  
}

コンソールからも確認してみます。
デフォルト証明書が[rds-ca-rsa2048-g1]に更新されていることを確認できました。

更新したデフォルト証明書の設定削除

更新したデフォルト証明書の設定を削除したい場合は以下のコマンドを実行します。
削除した場合はAWS指定のデフォルト値に変わります。

aws rds modify-certificates \
    --remove-customer-override \
    --region ap-northeast-1

さいごに

以上、RDSのデフォルト証明書の確認と更新についてでした。

2024/1/31時点で設定されているデフォルト証明書[rds-ca-2019]では、2024/8/23に期限切れになってしまいます。
デフォルト設定のまま構築を進めた場合に証明書更新の手間が発生するので事前にデフォルト設定を更新しておくのもよいかと思います。