証明書をALBに紐づけてHTTPSで接続する

この記事を書いたメンバー:

榊原慶太

証明書をALBに紐づけてHTTPSで接続する

目次

BeeXの榊原です。本記事はBeeX Advent Calendar 2023 の15日目の内容です。


BeeXのカレンダー | Advent Calendar 2023 - Qiita

BeeXのカレンダーページです。

qiita.com

og_img


前回はSSL証明書をAWS ACMで作成したので、今回はそれをALBに紐づけてHTTPSで接続できるようにします。前回記事は下からどうぞ。


お名前ドットコムの独自ドメイン名でAWS ACMを使ってSSL証明書を取得する|基幹システムのクラウド移行・構築・導入支援のBeeX

株式会社Beex(ビーエックス)のエンジニアが執筆するお名前ドットコムの独自ドメイン名でAWS ACMを使ってSSL証明書を取得するのページです。SAPなど基幹システムを中心としたエンタープライズシステムのクラウドインテグレーションを専業としています。

beex-inc.com

og_img


構築する構成

証明書取得まで(別記事)
➁証明書を紐づけてALBにHTTPS接続するところまで(本記事)
AzureADとCognitoで認証を付けるところまで(別記事)

構築手順

EC2で接続先Webサーバの構築

お好きなLinuxサーバを立てます。自分はAmazon Linux 2で立てました。
サーバを立てたらTeraTerm等でOSに入り、以下のコマンドを入力します。

$ sudo yum update -y
$ sudo yum install httpd -y
$ cd /var/www/html
$ sudo vi index.html

# index.htmlは以下を記載して保存
<html><h1>任意の値</h1></html>

$ sudo service httpd restart

ターゲットグループの作成と設定

AWSコンソールのEC2にいき、サイドバーの「ターゲットグループ」、「ターゲットグループの作成」を押下します。

下のように設定します。
・ターゲットタイプはインスタンス
・ターゲットグループ名は任意
・プロトコル:ポートはALB→EC2はHTTP
・VPCはEC2があるサブネットを選択
・ヘルスチェックプロトコルHTTP
・ヘルスチェックパスは/index.html

ターゲットに作成したインスタンスを選択します。

以上でターゲットグループの設定は完了です。

ALBの作成

AWSコンソールのEC2からALBを作成します。設定は画像をご参照ください。
セキュリティグループについては、安全のため自宅のIPからしか接続できないように設定しています。

以上を設定したら、画像を取り忘れましたが「ロードバランサーの作成」を押下します。ALBの作成が完了したらターゲットグループに戻ってヘルスチェックが通っているか確認しましょう。HealthyになっていればOKです。

レコードの登録

仕上げにドメイン名でALBにアクセスできるようRoute53のホストゾーンを設定します。

・レコードタイプはAレコード
・エイリアスを有効
・トラフィックのルーティング先に作成したALBを指定

ここまで設定出来たら「レコードを作成」を押下します。

下記のようにAレコードのルーティング先にALBのDNS名が登録されていればOKです。

実際にドメイン名でALBに接続する

ブラウザで自身のドメイン名にアクセスしてみましょう。
検索画面に「https\://自身のドメイン名」と入力します。

無事にロードバランサ先のEC2に接続できました。
証明書の内容も見てみましょう。問題なさそうです。

最後に

今回はALBに証明書を紐づけてHTTPS接続する手順について書きました。これ以降Azure ADとCognitoで認証されたユーザーのみEC2に接続できるという設定も可能です。もしご興味があればこちらを参考に設定してみてください。ここまでお読みいただきありがとうございました。


カテゴリー
タグ

この記事を書いたメンバー

榊原慶太
榊原慶太

技術検証、re:Invent参加、AWS資格全冠のための勉強教材等、幅広く記事にしています。皆様のお役に立てば幸いです。最近は会社ブログメインで記事投稿しています。

SAPシステムや基幹システムのクラウド移行・構築・保守、
DXに関して
お気軽にご相談ください

03-6260-6240 (受付時間 平日9:30〜18:00)