👏
CloudFront・ALB・ECS・Fargate・NginxでWebサイト作成②
はじめに
前回作成した、HTTPでアクセスする構成をACMで証明書を発行し、HTTPSでアクセスできるようにしていきます。
前提条件
- ドメインはお名前.comで作成し、Route53にホストゾーンを作成し、NSレコードを登録します
- albのセキュリティグループのインバウンドにHTTPSを追加
ACMで証明書の作成
①クライアント→CloudFront、②CloudFront→ALBの通信をHTTPSにするには、証明書が2つ必要。
①のCloudFrontで使用するには、バージニア北部リージョン(us-east-1)で作成しなければいけません。
まず東京リージョンから作成していきます。
- ACM管理コンソールのリクエストからパブリック証明書をリクエストを選択
-
完全修飾ドメイン名に
example.com
,*.example.com
を入力 - DNS検証を選択し、リクエスト
※リクエストをクリックした後、CNAMEが追加されないとステータスが保留中の検証
のまま変わらない - Route 53 でレコードを作成をクリックし、CNAMEを追加
- CNAMEが追記されたか確認する方法
- Route53で確認
- digコマンドで確認
$ dig _example.example.com. +short
- ステータスが成功になったら成功(少し待ち時間がある)
バージニア北部リージョンでも同様に作成。
- CNAMEは既に作成されているので、すぐに成功します
CloudFrontの編集
HTTPの設定になっているので、HTTPSに設定していきます。オリジンドメインの変更も行います。
設定の変更
-
一般タブの代替ドメイン名を編集し、
example.com
に設定します -
オリジンタブのオリジンドメインを編集し、
example.com
に設定します -
オリジンタブのデフォルトを編集し、
HTTPSのみ
に設定します
※オリジンドメインは独自ドメインを入力しない!!ALBを設定! - クライアントからCloudFrontの通信をHTTPSのみにする為ビヘイビアタブのデフォルトを
HTTPからHTTPSにリダイレクト
に設定する
Route53の編集
CloudFrontディストリビューションにドメインを設定するRoute 53のレコードを編集していきます。
- レコード名は空(サブドメインをつけない為)
- レコードタイプはAレコードを選択
- エイリアスをオン
- CloudFrontのエンドポイントを選択し、ディストリビューションを選択
ALBの編集
ALBのリスナーとルールをHTTPSに編集します。
- プロトコルをHTTPSに変更
- 証明書を東京リージョンで作成したものを選択
これで独自ドメインにアクセスしHTTPSで閲覧できれば成功!
Discussion