実際にやってみたときのメモです。
そもそもの話
SSLって何?とかは、以下参照。
【勉強メモ】SSL/TLSとhttp/httpsの違い - Qiita
前提事項
- アプリケーションは、EC2上で稼働させる
- Route53 → ALB → EC2の構成で実行。HTTPSはRoute53 → ALB間のみ。
- ドメインはAWSでも取得できるが、有料のため、無料のFreenomで取得。
【図解】DNSサーバーとは?設定・変更と確認方法 | カゴヤのサーバー研究室
手順
作業の流れ
- ドメインを取得
- Route53のホストゾーン作成
- ACM(Amazon Certificate Manager)でSSL証明書を取得
- ALB作成(SSL証明書の設定も併せて実施)
- Route53にALBのAレコード登録
- アプリを稼働させてhttpsでリクエスト
ドメインの取得
無料のドメインを取得する - Qiita
無料ドメイン(.tk)とRoute53を利用して0円でHTTPS環境を設定してみた | DevelopersIO
[今すぐ入手]を押す前に、「xxxx.tk」等、ドメインの最後まで入力する必要あり
(.xxを入力してない場合、取得不可で先に進めない)
Route53設定
ホストゾーンの作成
Route53
のホストゾーン
で、[ホストゾーンの作成] を押す
ホストゾーンの設定
取得したドメイン名を入力し、[ホストゾーンの作成]を押す。
作成後。CNAMEレコードを登録のためメモする。
NSレコードの確認
ネームサーバの登録
Services▼
メニューのMy Domains
を選択し、対象のドメイン欄のManaged Domain
ボタンを押す。
Management Tools▼
メニューのNameservers
で設定を行う。
NSレコードを4件とも登録する。
Certificate Manager(ACM)でSSL証明書を取得
証明書のプロビジョニング
パブリック証明書をリクエストする
ドメイン名はワイルドカード証明書(*.~)として作成する。
(後のALBのAレコード設定時に必要なため)
ドメイン名の追加
検証方法の選択
タグを追加(任意)
タグ管理したいときのみ、タグを追加する。
確認とリクエスト
検証(CMANEレコードの設定と、検証リクエスト)
ドメインのDNS(Route53)にCNAMEレコードを設定する。
Route53を使う場合、[Route53でのレコード作成]
ボタンを押すことで、自動で登録してくれる。
ACMのメニューで、検証が成功し、発行済になっていることを確認。
(Route53を使った場合は、30分以内で完了できる)
ALBの作成
以下の内容で作成。
(詳細手順は、別記事「【メモ】AWSでApplication Load Balancerの作成」参照)
設定箇所 | 設定内容 |
---|---|
ロードバランサーの種類の選択 | Application Load Balancer |
【手順1:ロードバランサーの設定】 ロードバランサーのプロトコル |
HTTPS |
【手順 2: セキュリティ設定の構成】 デフォルトの証明書の選択 |
ACMで作成したSSL証明書 |
Route53にALBのAレコード登録
Route53
のホストゾーン
で、作成済のものを選択し、[レコードを作成]
。
レコード名がhttp/httpsリクエスト時のドメインの名前になるので注意。
「bbb.aaa.com」にした場合、アクセス方法は「http(or https)://bbb.aaa.com」になる。
項目 | 内容 |
---|---|
レコード名 | 作成するレコードの名前。 |
レコードタイプ | A - IPv4アドレスと一部のAWSリソースにトラフックをルーティングします。 |
トラフックのルーティング先 | 作成したALB(ロードバランサー)を選択。 |
ルーティングポリシー | 使いたいものを選択。シンプルルーティング …Webサーバーなど 1リソースのみにルーティングする。加重 …同じジョブを実行する複数のリソースがあり、各リソースへのトラフィックの割合を指定する。位置情報 …ユーザーの場所によりルーティング。レイテンシー …複数リージョンにリソースがあり、レイテンシーが最適なリージョンにルーティングする。フェイルオーバー …リソースが正常時はそのリソースに、異常時は別のリソースにルーティングする。複数値回答 …Route 53が DNSのクエリに対し、ランダムに選択された最大 8 つの正常なレコードを返す。 |
ターゲットのヘルスを評価 | 指定したリソースが正常時のみ、Route 53がこのレコードを使用してDNSクエリに応答する。 |
参考サイト
AWS運用には無料のSSL証明書を活用しよう!(取得も簡単、難易度低です) | AWS運用最適化サービス cloud link (クラウドリンク)