■ はじめに
今回は、 SSL証明書を発行するサービス「AWS Certificate Manager (ACM)」 について、取り上げる。
目次
【1】AWS Certificate Manager (ACM) 1)料金 2)サポートしているAWSサービス 【2】証明書検証方法 1)「DNS」と「Eメール」どっちがいい?
【1】AWS Certificate Manager (ACM)
* AWS自身が認証局(CA; Certification Authority)になって SSL/TLS 証明書を提供してくれるAWSサービス
1)料金
https://aws.amazon.com/jp/certificate-manager/pricing/
* 無料
2)サポートしているAWSサービス
[1] Elastic Load Balancing (ELB) => ALBのみ [2] Amazon CloudFront [3] Amazon API Gateway [4] AWS Elastic Beanstalk [5] AWS CloudFormation [6] AWS Nitro Enclaves
補足1:[1] - [5] について
https://aws.amazon.com/jp/certificate-manager/faqs/
の「Q: ACM 証明書は、どの AWS のサービスで使えますか?」を参照
補足2:「[6] AWS Nitro Enclaves」について
https://aws.amazon.com/jp/about-aws/whats-new/2020/10/announcing-aws-certificate-manager-for-nitro-enclaves/
注意:CloudFrontでの使用について
* CloudFrontで使用する場合、 リージョンは「米国東部(バージニア北部)」で作成する必要あり
より抜粋 ~~~~~~~~~~~~ 証明書をリクエストする AWS リージョン (AWS Certificate Manager 用) ビューワーと CloudFront との間で HTTPS を必須にするには、 証明書をリクエストまたはインポートする前に AWS Certificate Manager コンソールで AWS リージョンを 米国東部(バージニア北部) に変更する必要があります。 ~~~~~~~~~~~~ * CloudFront については、以下の関連記事を参照のこと。
https://dk521123.hatenablog.com/entry/2017/12/18/233136
【2】証明書検証方法
1)DNS での検証 2)Eメールでの検証
1)「DNS」と「Eメール」どっちがいい?
* 『1)DNS での検証』がいいと思う
https://aws.amazon.com/jp/blogs/news/easier-certificate-validation-using-dns-with-aws-certificate-manager/
https://aws.amazon.com/jp/about-aws/whats-new/2017/11/aws-certificate-manager-easier-certificate-validation-using-dns/
理由
* 「Eメールでの検証」だと、ドメイン検証の仕方として、HTTPS(ポート番号443)接続でアクセスする Case1 : 成功 => 自動更新 Case2 : 失敗 => Email送信され、ユーザが手動更新しなければならない (やり忘れたらSSL接続ができない)
失敗するケースは?
=> 例えば、セキュリティグループで、内部から接続できるが、外部接続ができない環境(開発環境など)だった場合
一方「DNS 検証」の検証方法は?
* 指定されたCNAME (正規名) レコードが登録されているかを確認したら、証明書を自動更新
関連する公式ページ
https://docs.aws.amazon.com/ja_jp/acm/latest/userguide/how-domain-validation-works.html
より抜粋 証明書を更新する前に、ACM は証明書の各ドメイン名を自動的に検証することを試行します。
https://docs.aws.amazon.com/ja_jp/acm/latest/userguide/gs-acm-validate-dns.html
より抜粋 DNS 検証は、E メール検証よりも多数のメリットがあります。 * DNS では、ACM 証明書をリクエストするときに、ドメイン名あたり 1 つの CNAME レコードのみを作成する必要があります。 E メール検証では、ドメイン名あたり最大 8 つの E メールメッセージが送信されます。 * DNS レコードが残っていれば、FQDN 用に追加の ACM 証明書をリクエストできます。 つまり、同じドメイン名を持つ複数の証明書を作成できます。新しい CNAME レコードを取得する必要はありません。 これを行うことには、いくつか理由があります。 たとえば、異なるサブドメインを対象とする新しい証明書を作成する、複数のリージョンで同じ証明書を作成する (認証トークンはどのリージョンでも使用できます)、削除した証明書を置き換えるなどです。 * ACM は、DNS を使用して、検証した ACM 証明書を自動的に更新します。 証明書は使用中で DNS レコードが残っている状態であれば、各証明書は有効期限が切れる前に ACM によって更新されます。 * Route 53 を使用している場合は、ACM によって CNAME レコードが追加され、パブリック DNS レコードを管理できます。 * DNS 検証プロセスは、E メール検証プロセスよりも簡単に自動化できます。 ただし、ドメインの DNS レコードを修正する権限がない場合は、E メール検証が必要となる場合があります。
関連記事
Amazon CloudFront ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2017/12/18/233136
AWS の セキュリティを考える
https://dk521123.hatenablog.com/entry/2017/08/31/235847