ACMの証明書発行をたまに実施するのですが、たまに実施するが故に細かい所をいつも忘れているので、備忘録として記載しておきます。
サブドメインのパブリック証明書発行作業
ACMでのパブリック証明書発行のためには、ドメイン検証処理を行う必要があり、サブドメインの場合は以下どちらかの処理が必要となる。
(1) メールでの承認処理
発行処理を実施した後、以下のアドレスまでVerifyメールが送信されので、メール本文の承認リンクをクリックします。
- whoisに登録された、利用ドメインの各担当者メールアドレス
- ドメイン登録者
- テクニカル担当者
- 管理者
- 申請ドメイン名に基づいたアドレス(your_domainが申請ドメイン名となる)
- administrator@your_domain
- hostmaster@your_domain
- postmaster@your_domain
- webmaster@your_domain
- admin@your_domain
とは言っても、サブドメインはwhoisに登録されていないでしょうし、サブドメインのメールアドレスが存在しない場合も多いでしょう。そういった場合、認証先のドメイン情報をスーパードメインに変更して、証明書を発行します。
CLIにて、以下のようなコマンドを実施することになります。
$ aws acm request-certificate --domain-name server.sub.domain.com \ --validation-method EMAIL \ --domain-validation-options DomainName=sub.domain.com,ValidationDomain=domain.com \ --region ap-northeast-1 \
request-certificate — AWS CLI 1.16.227 Command Reference
(2) DNSでの認証
ACMより、DNSに登録すべきCレコードが提供されるので、それを該当ドメインのDNSに設定する。
ワイルドカードを利用したパブリック証明書発行作業
アスタリスク(*)を用いた証明書を発行する場合、アスタリスクは1階層分のサブドメインレベルで有効になります。例えば、 *.domain.com
という証明書を作成した場合、 server.domain.com
には有効となりますが、 server.sub.domain.com
には働きません。
また、ワイルドカード証明書は、Zone Apex のドメインには働きません。例えば、 *.domain.com
という証明書を作成した場合、 domain.com
では有効となりません。証明書を発行する際に、Zone Apex用のドメインを追加する必要があります。
上みたいな感じですね。メール検証の場合、Verifyメールが2件届きます。