想ひ出のへっぽこBlogⅡ from35

~ 自身の備忘録および学習促進のためにブログります。~

想ひ出5: ALB + nginxでSSL設定する

f:id:moqrin3:20181201085525p:plain
AWS ALB

おはようございます、moqrinです。
とても久し振りの投稿です。。
大して人が閲覧しているわけでもないと、対応が後回しになってしまいますねー。
でもどこかでこのクソブログが誰かの役に立てるように、引き続き備忘録的に記事更新していきます。
今更感のあるALBネタなので、やり方は多々ありますが、設定の要所のみ記載していきます。

対応事項

1. Nginxで81ポートから443にリダイレクトさせる。
2. HTTPリダイレクト用とHTTPSのターゲットグループ(以下TG)を作成する。
3. HTTPリダイレクト用のTGに81ポートで対象のインスタンスを登録、HTTPSのTGに80ポートでHTTPで登録したと同一インスタンスを登録する。
4. リスナー80443を追加して、証明書を選択、ルーティングは作成したHTTPでALBを作成する。
5. ALBのリスナータブで転送先をHTTPSに編集する。

1.Nginxの設定

# nginx.vhost.conf

    # for redirect
    server {
        listen 81;
        server_name SERVER_NAME;
        return 301 https://$host$request_uri;
    }
    
    server {
        listen 80;
        server_name SERVER_NAME;
        # 以下略

2.ターゲットグループの作成

HTTPリダイレクト用とHTTPSのターゲットグループを作成します。
それぞれtest-web-http,test-web-httpsとしています。
(※ のちの画像だとミスったため、"test-web-https2"になってしまってます。。)
LBから先はHTTPプロトコルのため、両グループともポートは80です。

f:id:moqrin3:20181201085729p:plain

f:id:moqrin3:20181201085747p:plain

ヘルスチェックは簡単化のため、rootにしてしまってます。

3.インスタンスの登録

HTTPリダイレクト用のTGに81ポートで対象のインスタンスを登録します。

f:id:moqrin3:20181201085807p:plain

HTTPSのTGに80ポートでHTTPで登録したのと同一インスタンスを登録します。

f:id:moqrin3:20181201085826p:plain

4. ALBを設定:リスナータブで転送グループ先をHTTPSターゲットグループに設定

f:id:moqrin3:20181201085847p:plain

あとは、Route53でDNS設定をして確認すればOKです。 以上でございます。

参考


AWS ALB + nginx 構成でhttpをhttpsにリダイレクトする