Skip to content

ALBに独自ドメインを設定してHTTPSにする

   

ALBに独自ドメインを設定してHTTPSにする方法です。 ALBの向き先をnginxをインストールしたEC2インスタンスに設定し、ACMを使ってHTTPSにします。

EC2インスタンスの設定

まずEC2インスタンスをパブリックサブネットに作成します。 Amazon Linux2, インスタンスタイプは t2.nano で作りました。 無料枠が残っている場合は t2.micro で作ると良いかもしれません。

次にSSH用のキーペアに権限を調整し、SSHログインします。 パブリックIPアドレスはEC2インスタンスのコンソールから確認します。

$ chmod 400 key-pair.pem
$ ssh -i key-pair.pem ec2-user@{IP_Address}

nginxをインストールします。

$ yum search nginx
$ sudo amazon-linux-extras install nginx1
$ nginx -v

nginxを起動します。起動したことを確認します。

$ sudo systemctl start nginx
$ sudo systemctl status nginx

次にインターネットからEC2インスタンスにアクセスできるようにセキュリティグループで80番ポートを許可します。

Security Group

ブラウザにEC2インスタンスのパブリックIPを入力してアクセスするとnginxのページが表示されることを確認します。

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

次にALBの設定を行います。 EC2 -> ロードバランサー と進み、Application Load Balancer を選択して作成します。

Create ALB

ALBの作成にはターゲットグループが必要なので、Listeners and routing の項目の Create target group からターゲットグループを作成します。

Create Target Type

ターゲットタイプにインスタンスを設定しターゲットグループを作成します。

Choose Instance Type

先ほど作成したEC2インスタンスを登録します。

Register Instance

ALBの作成画面に戻り、先ほど作成したターゲットグループを設定し、ALBを作成します。

Set Target Group

インターネットからHTTPでアクセスできるようにALBのセキュリティグループを設定します。

Register Instance

ALBのURLをブラウザに入力し、nginxのページが表示されることを確認します。

Route53を使いALBに独自ドメインを設定する

Route53のコンソールからホストゾーンを選択し、シンプルルーテングを追加します。

Add Simple Routing

任意のレコード名を設定し、ルーティング先に先ほど追加したALBを設定します。

Set Simple Routing

追加したレコードにブラウザからアクセスし、nginxの画面が表示されることを確認します。

AWS Certificate Managerを使って証明書を作成してHTTPSにする

ACMからパブリック証明書をリクエストします。

Request Certificate

Request Certificate

ALBのリスナールールにHTTPSのリスナールールを設定します。

ALB Listener Rule

ALB Listener Rule

最後にHTTPからのリクエストをHTTPSにリダイレクトする設定を行います。 ブラウザからHTTPSでアクセスできることを確認します。

HTTPS

関連記事

  1. EC2インスタンスにnginxをインストールしてブラウザからアクセスする
  2. LambdaとEvent BridgeでDiscordの目覚ましBotを作る
  3. AWS CLI を使ってS3バケットを作成する
  4. S3に静的ファイルを置いてインターネットに公開する
  5. インフラエンジニアなりたてで知らなかった単語をまとめ