概要
ALBにACM/SSL証明書を関連付けてみます。
画像のような感じです。
基本的なかたちですね。
ユーザからALBまではHTTPSで、ALBからEC2までの内部通信はHTTPです。
手順
1. ACMで証明書を取得する
以下ですこしやりました。
2. EC2インスタンスの作成と設定
ALBからのアクセスを受けるEC2インスタンスを設定してあげます。
セキュリティグループはALBからの通信を受けられるような設定のものをアタッチしてあげます。
3. ALBの作成と設定
以下のようなかんじの設定でALBを作成してあげます。
3.1. ロードバランサーの設定
名前: すきななまえ
スキーマ: インターネット向け
IPアドレスタイプ: ipv4
リスナー: HTTPS
VPC: すきなVPC
アベイラビリティゾーン: すきなAZ
3.2. セキュリティ設定の構成
証明書タイプ: ACM から証明書を選択する
証明書の名前: 手順1 で取得した証明書の名前
3.3. セキュリティグループの設定
セキュリティグループ: インバウンドに任意の場所からHTTPSが許可されたものを選択
3.4. ルーティングの設定
ターゲットグループ: 新しいターゲットグループ
名前: すきななまえ
ターゲットの種類: インスタンス
プロトコル: HTTP
ポート: 80
ヘルスチェックのプロトコル: HTTP
ヘルスチェックのパス: /
3.5. ターゲットの登録
手順2で作成したインスタンスを登録済みに追加する。
4. EC2インスタンスの設定をする(Apache)
インスタンスにssh接続し、以下を実行してApacheの設定をしてあげます。
4.1. Apacheのインストール
sudo yum install -y httpd
4.2. ファイルの設置
sudo mkdir -p /var/www/html
sudo bash -c "echo 'wawawa' > /var/www/html/index.html"
4.3 Apacheの起動
sudo systemctl start httpd
5. ちょっとした確認
この時点でALBからインスタンスにアクセスできるかどうかを確認してみます。
5.1. ターゲットグループのステータスの確認
ターゲットグループのステータスがhealthyかどうかを確認します。
5.2. ALBのDNS名からブラウザでアクセス
ALBのDNS名からブラウザでアクセスして確認してみます。
https://ALBのドメイン名
です。
証明書のドメインとALBのドメインが違うため、警告がでますが、無視してさきにすすみます。
wawawaと表示されればOKです。
6. Route53の設定
ALBのDNS名をコピーし、Route53にCNAMEとして追加してあげます。
ホストゾーン: ACM取得したドメイン
タイプ: Aレコード
エイリアス先: 作成したALB
7. 最終確認
ブラウザからドメイン名でアクセスします。
HTTPSで通信ができているはずです!!!
おわりに
べんりですね
Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)
- 作者:山本 陽平
- 出版社/メーカー: 技術評論社
- 発売日: 2010/04/08
- メディア: 単行本(ソフトカバー)