AWSでWordPressサイトを構築 第5回〜Route53〜

こんにちは。かっぺいです。
AWSでWordPressサイト構築、今回はRoute53でドメイン管理を行います。
本来であれば、1回目のあたりにできていないとhttpsサイトとして使えないのですが、遅ればせながらRoute53でのドメイン取得、https関連としてCertificateManagerによる証明書の取得手順を紹介したいと思います。

Route53とは

Route53とは、AWSのマネージメントDNSサービスです。
ドメインの取得から、レコードの管理まで全てを行えます。

ドメインの取得

jpドメインの取得だけを見ると、Route53で取得するよりも、「お名前.com」とかで安く入手できます。
ドメイン移管もできますが、手順が面倒なので、最初からRoute53で取得することをお勧めします。

Route53を開き、ダッシュボードのドメインの登録、またはメニューのドメイン項目にある、登録済みのドメインから、ドメインの登録を選びます。

まずは、取得したいドメイン名が既に使われていないかのチェックを行います。
取得したい、トップドメインを選んだのち、ドメイン名を入力して検索します。

既に使われている場合、ステータスに使用不可と表示されます。他のトップドメインを変更した候補が表示されます。

利用可能な場合、「カートに入れる」を選ぶと登録への手順へ進めます。

登録者の情報を入力しまし、支払いへ進みます。
AWSでは、ドメインの更新を自動更新にできますし、多年契約によるディスカウントはありませんので、登録期間は1年で問題ありません。

連絡先が個人の場合、登録情報のプライバシーの保護を選ぶことができます。

ドメイン登録情報は、Whoisに登録されますが、プライバシーの保護を保護を有効化しておくと、ドメインの所有者情報がAWSとして登録されるようになります。

以上でドメインを取得し、Route53で管理できるようになります。
登録済みドメインに、自分の取得したドメインが表示され、連絡先などの管理ができるようになります。

同様にホストゾーンに、自分のドメインが表示され、レコードの管理を行えるようになります。

CertificateManagerで証明書の取得

続いて、httpsサイトで利用するSSL証明書を取得します。
AWS内で利用する場合、CertificateManagerから証明書のリクエストで証明書を取得することができます。
しかも、無料で自動更新されます。

ただし、CertificateManagerで発行できるのは、ドメイン認証の証明書となります。
より上位の認証(企業実在認証やEV認証)は発行できませんので、外部機関で発行してもらいインポートする形になります。
個人で利用する場合には、ドメイン認証で十分なので、気にする必要はないと思います。

なお、CloudFrontでSSLを行う場合、リージョンはバージニア北部で取得する必要があります。

CertificateManagerを開いて、証明書を選択。リクエストを選びます。

「パブリック証明書をリクエスト」を選び、次へ進みます。

取得したいドメイン名を入力します。*のワイルドカードも指定できます。
検証方法に、DNS検証を選びます。

なお、別サービスでDNSレコードを登録することが可能であれば、取得する証明書はRoute53で管理していないドメインも取得できます。

リクエスト後、DNSにCNAMEレコードを追加するように求められます。
CNAMEを検証しOKになると、検証済みとなり証明書が利用可能となります。
なお、同一アカウントのRoute53で管理しているドメインの場合、検証画面に「Route53でレコード作成」ボタンが表示され、1クリックでレコード登録することができます。

SSL証明書の利用

CloudFrontやALBで、httpsを選択するとSSL証明書を選ぶように表示されます。
リージョンが一致するCertificateManagerで取得した証明書がドロップダウンリストで表示されますので、適合するものを選択します。

ブラウザで、該当ドメインにhttpsのURLでアクセスし、証明書の内容とドメインの内容が問題なければ通常に表示されます。
内容が不一致となれば、ブラウザのセキュリティ警告画面が表示されます。

証明書のドメインレコードの登録

CloudFrontやALBでの入口はAWS管理のディストリビューション名またはホスト名となっています。
証明書のドメイン名でアクセスさせるためには、それぞれのサービスの名称へのCNAMEを定義する必要があります。

ALBの場合は、CNAMEで転送したいホストとALBのドメイン名の定義となります。
CloudFrontの場合は、Aレコードでエイリアスを選びAWSのサービスからCloudFrontを選択すると、CloudFrontのリストから転送先を選ぶことができます。