AWS CLIで、サーバ証明書を削除するには、delete-server-certificate を使う。ELBに設定されている証明書を削除したら、どうなるだろうかと思って試しにやってみた。

予想では、エラーになるのではないか。

% aws iam delete-server-certificate --server-certificate-name manage.example.com.20150703

特にエラーが出なかった。削除されたようだ。

ELBの状態はどうなるんだろうか。

% aws elb describe-load-balancers --query 'LoadBalancerDescriptions[?LoadBalancerName==`manage`].ListenerDescriptions[]'
[
    {
        "Listener": {
            "InstancePort": 80,
            "LoadBalancerPort": 80,
            "Protocol": "HTTP",
            "InstanceProtocol": "HTTP"
        },
        "PolicyNames": []
    },
    {
        "Listener": {
            "InstancePort": 80,
            "SSLCertificateId": "Invalid-Certificate",
            "LoadBalancerPort": 443,
            "Protocol": "HTTPS",
            "InstanceProtocol": "HTTP"
        },
        "PolicyNames": [
            "AWSConsole-SSLNegotiationPolicy-manage-1435909598260"
        ]
    }
]

"SSLCertificateId": "Invalid-Certificate" となるようだ。なるほど。

新しい証明書を有効にした後、古い証明書を削除しようとして、間違って新しい証明書を消さないように注意しないと。

元記事はこちら

[AWS] ELBに設定されている証明書を削除するとInvalid-Certificateになる