目次
はじめに
こんにちは、株式会社エーピーコミュニケーションズ、クラウド事業部の松尾です。
本記事では構築済みのWebサイトをHTTPS化します。ついでにドメインでのアクセスも実装してみましょう。
ゴール
本記事でお伝えすることは次の内容です。
- CloudFront~ALBのHTTPS接続方法
- ALBのHTTPS設定
- Route53でのドメイン取得方法
- Route53のホストゾーン登録
- ACMでの証明書取得と設定方法
検証プラン
以下の構成でHTTPアクセスでALBのドメイン宛てに表示できるWordpress環境を構築済みです。
Route53とCloudFront経由でHTTPS接続できる構成をゴールとします。
具体的には以下の流れで実装していきます。
- CloudFront経由でのHTTPS接続
- Route53経由でのHTTPS接続
やってみる
1. 事前確認
まず、ALBドメインへHTTP接続してWordpressサイトが表示できることを確認しておきましょう。
2.ドメイン取得
今回はRoute53でドメインを取得します。(他ブログでは無料で取得できるサイトも紹介されていましたが現在は使えないところが多数でした) 2024年5月時点で最安だった「.click」ドメインにしていきます。
3.ACMで証明書を発行
今回の構成ではALBまでHTTPS化していくので証明書はCloudFrontとALBの2か所で必要です。
ALBドメインはALB作成時に生成されたものがありますが、これは証明書が登録されていないドメインなので、このままではHTTPS化できません。そのため、ALBドメインを新規に作り、証明書を登録していきます。
つまり、ACMで「CloudFront用ドメインに対する証明書」と、「ALB用ドメインに対する証明書」の2つを発行していきます。
一点注意ですが、CloudFrontの証明書は米国東部(バージニア北部)である必要があります。
Route53に登録したドメインは「apclp.click」なのでそのまま「apclp.click」でも良いですが、「www.apclp.click」でもアクセスできるように完全修飾ドメイン名を「*.apclp.click」としておきます。
検証方法はRoute53で登録済なので「DNS検証」を選択。
次はALB用のACMを発行します。
東京リージョンで「alb.apclp.click」ドメインの証明書を作成します。
証明書のステータスが「発行済」に遷移したらOKです。
4. CloudFront経由でのHTTPS接続
Cloudfrontのディストリビューションを作成します。
オリジナルドメインはALBのACMで登録したドメイン名を設定。
プロトコルは一旦HTTPとHTTPS両方を許可しておきます。
「代替ドメイン」には「*.apclp.click」を設定。CloudForntの初期ドメイン名(https://XXXXXXXXXXXXX.cloudfront.net)以外でアクセスできるようにしましたが無くても良いです。
ディストリビューションステータスが「有効」になればOKです。
続いて、ALBのドメイン名「alb.apclp.click」をRoute53のホストゾーンへ登録します。
一度CloudFornt経由のHTTPアクセスを確認してみます。
ちなみにこの時点でHTTPSアクセスもできます。が、Wordpress側をHTTPS対応させていないので表示レイアウトが崩れています。
今回は本題ではないのでこのままいきます
5. Route53経由でのHTTPS接続
次はRoute53のホストゾーンにCloudForntディストリビューションを登録していきます。
登録出来たら「apclp.click」宛てに通信してみましょう。
まとめ
無事にドメイン宛てにWebサイトに接続することが出来ました。自動生成の味気ない文字列から意図したドメイン名でアクセスできて見た目が少し美しくなりました!
ドメイン取得含めてAWSで完結できるのは分かりやすくて良いです。また、HTTPS化すると証明書の期限管理が手間になりますがACMだとダッシュボード上で一元的に期限状態が分かるので実際の運用でも使えると思います。
CloudFront用に米国東部リージョンで作成するのは手間でした。
Route53のホストゾーンへの設定の仕方は私の知識が無く調べながらとなりました。ドメイン周りを具体的に設定することで少しは理解が進んだかなと思っています。
おわりに
私達クラウド事業部はAWSなどのクラウド技術を活用したSI/SESのご支援をしております。
また、一緒に働いていただける仲間も募集中です! ご興味持っていただけましたらぜひお声がけください。