触って学ぶRoute53 ~独自ドメインでHTTPS通信~

aws

今回は、独自ドメインを使ってHTTPS通信をやっていきたいと思います。

Webサイトを立てる時は、自分で好きな名前のドメインを付けて、HTTPSで通信の暗号化を行いたいですよね!?
それがこの記事で実現出来ちゃうんですよ!!!
ワクワクしませんか!?

ドメイン名をIPアドレスに変換する為に、Amazon route53という、Domain Name System(DNS)サービスを使います。

HTTPS通信を実現する為に、SSL証明書の発行や管理を行ってくれる、Amazon Certificate Manager(ACM) を使います。

独自ドメインは一定期間 無料で使用出来ますので、チャレンジしてみてください。

やりたいこと

  • 独自ドメインを使って、HTTPS通信を行う

aws構成図

やることリスト

  • VPC内に、2つPublic Subnetを構築
  • 各Public Subnet 内に EC2インスタンス を構築
  • 各EC2インスタンス内に、Webサイトを立ち上げ
  • ALBを構築
  • ドメインの取得
  • Route53にドメイン登録
  • ACMで証明書発行
  • ALBのリスナーに443追加

料金の確認

AWSサービスには、無料で使えるサービスもありますが、当然有料サービスもあります。

本章では、分かる範囲でAWSサービスの料金について書こうと思いますが、私の理解不足で漏れていることもあります。

各サービスを使う際は、料金がどのくらい掛かるかを理解した上で、自己責任で利用ください。

Route53

今回は、料金が掛かってきます。
0.50 USD ホストゾーンごと / 月
月に0.5ドルなら安いです。

料金 - Amazon Route 53 | AWS

VPC構築

EC2インスタンス構築

ALB構築

上記の「VPC構築」、「EC2インスタンス構築」、「ALB構築」は、以下記事を参照して構築してください。

触って学ぶELB ~ALB構築~
今回は、負荷分散や高可用性を実現する為に必要な、Application Load Balancer(ALB)を構築していきます。ALBが動作しているかを確認する為に、EC2インスタンスを2つ構築し、それぞれに、表示内容の違うWeb...

ドメイン取得

以下「お名前.com」にアクセスし、自分だけのドメインを取得していきましょう!

ドメイン登録

ドメインを取得したら、Route53にドメインを登録していきましょう。

AWSのコンソール画面にログインし、Route53 サービスに遷移します。

設定~Route53~

ホストゾーン > ホストゾーンの作成 ボタンをクリックし、設定画面に遷移します。

ドメイン名欄に、ドメイン取得で取得したドメインを設定します。
後の設定はデフォルトで、「ホストゾーンの作成」 ボタンを押します。

設定~ネームサーバ~

route53にドメインを登録すると、ns-* といった、ネームサーバ が追加されます。
このネームサーバ4つを、「お名前.com」のネームサーバに設定します。

証明書発行

設定~証明書リクエスト~

ACMを使って、SSL証明書を発行していきましょう。

AWSのコンソール画面から、ACM サービスに遷移します。

左メニューから、証明書をリクエスト をクリックし、設定を行っていきます。

証明書タイプ

「パブリック証明書をリクエスト」を選択し、次へ。

ドメイン名

完全修飾ドメイン名欄に、取得したドメインを設定し、
他設定はデフォルトで、「リクエスト」ボタンをクリックしします。

設定~CNAMEレコードの追加~

ACMはドメインのCNAMEレコードを作成します。
そのCNAMEレコードをRoute53に追加してあげる必要があります。

証明書一覧 > (任意の)証明書ID > Route53でレコードを作成 > レコードを作成 ボタンを押します。

しばらくすると、証明書のステータスが、「発行済み」になります。

これで、HTTPS通信が出来ますね!

ロードバランサ―に443リスナー追加

HTTPS通信をする為に、ロードバランサ―のリスナーに443ポートを追加してあげましょう。

EC2サービス > ロードバランサ― > 任意の 「ロードバランサ―」 > 「リスナーとルール」タブ > 「リスナーの追加」ボタンを押して、設定画面に遷移します。

リスナーの詳細

セキュアリスナーの設定

ここで、先ほど発行されたSSL/TLS証明書を設定します。

最後尾の「追加」ボタンを押して終了です。

ロードバランサーへのルーティング追加

DNSでドメインの名前解決先を、ロードバランサ―に向けてあげます。

Route53サービス > ホストゾーン > 任意の「ホストゾーン」> 「レコードを作成」ボタンを押して、設定画面に遷移します。

ルーティングポリシー

「シンプルルーティング」を選択し、「次へ」ボタンを押します。

シンプルなレコードを定義

「シンプルなレコードを定義」ボタンを押します。

以下の設定を行い、「シンプルなレコードを定義」ボタンを押します。

「レコードを作成」ボタンを押します。

HTTPS確認

さあ!、いよいよ確認です!!!

取得したドメインにhttps://を付けてブラウザで表示させてみてください。

ブラウザのアドレスの左に、鍵マークがついて、接続が保護されたのではないでしょうか!!!

サービス削除

サービスには起動させているだけで料金が発生するものがあります。
使用しないのであれば、削除しましょう。

今回使用したサービスで、今思いつくものは以下になります。
課金が発生していないかは、日々チェックするのがいいと思います。

  • EC2インスタンス
  • ロードバランサ―
  • Route53のホストゾーン
  • ドメイン(お名前.com など)
  • NAT ゲートウェイ

最後に

如何でしたか?
座学で勉強するより更なる学びがあったのではないでしょうか。

タイトルとURLをコピーしました