AWSでCertificate Managerがサービスリリースされ、無料で独自ドメインのSSL/TLS証明書が発行できるようになりました。
せっかくなので、Route53で独自ドメインを取得し、証明書発行までを試しました。
Route53による独自ドメイン取得
マネジメントコンソールからRoute53のサービスで、"Domain registration"に進みます。
希望のドメイン名を入力し、"Check"を選択します。
トップドメインによって必要な登録料がことなりますが、比較的安価な.netを選択しました。
Checkの結果、問題ありませんでしたので"Add to cart"で登録手続きに進みます。
登録直後は"Domain registration in progress"のステータスでしたが、しばらくすると完了となりました。
また、ドメイン登録完了と同時に、Route53のHosted Zoneにも登録され、NXレコードやSOAレコードが作成済みの状態となりました。
なお、ドメイン登録にかかる費用は他の利用料と異なりその時点で請求が発生します。(請求書が発行されていました)クレジット決済であれば特に問題ないかと思いますが、法人等で支払い方法を振り込みに変更している場合はご注意ください。
Certificate Manager証明書作成
つづけて、Certificate Managerで登録したドメインの証明書を作成します。
マネジメントコンソールからCertificate Managerの画面へ移動します。
現時点では、Certificate ManagerはUS East(バージニア北部)のみのサービスなので、コンソールでもUS East(バージニア北部)を選択する必要があります。
証明書のリクエスト画面で、先ほど登録したドメインを入力します。
ワイルドカード証明書も作成可能です。
"確認とリクエスト"を実行すると、ドメイン所有者へ確認のためのメールが送付されます。
無料の証明書ですが、一応これでドメインの正当性を確認しているようです。
ドメイン登録時に入力したメールアドレスを確認すると、以下のようなメールが届いていました。
メール本文のリンクから確認画面に飛びます。
"I Approve"を選択すると、証明書が"発行済み"のステータスとなりました。
Certificate Managerで発行した証明書はELBやCloud FrontのようなAWSのサービス上でしか使用できません。
なので、作成した証明書の秘密鍵のダウンロードもできません。
発行した証明書の利用
発行した証明書を登録するため、既存のVPCでELBを作成してみました。
が、しかし、ELBのリスナーをhttpsにして証明書を選択しようとしてもCertificate Managerで発行した証明書が表示されません。
もしやと思い、既存の東京リージョンではなく、US East(バージニア北部)リージョンでELB作成をためしたところ、下記のようにAWS証明書マネージャ(ACM)から既存の証明書を選択するの選択肢が表示されました。
Certificate Managerは現時点ではUS Eastでしか提供されていないため、ELBに使用する場合は同じリージョンであるUS EastのVPC上のELBにしか適用できないようです。
なお、Cloud Frontで試したところ、Cloud Frontはリージョンをまたぐサービスのためか、Certificate Managerで発行した証明書を使うことができました。
なので、現時点では東京リージョンのサービスにCertificate Managerの証明書を使いたければCloud Frontを使う必要があるようです。
Certificate Managerは無料かつ手軽に証明書を発行できる非常にありがたいサービスですので、早く東京リージョンでの提供をしてほしいと思います。