y-ohgi's blog

しがないSREなフリーランスの徒然

Application Load BalancerでHSTSを試す

概要

HSTS(httpをhttpsへリダイレクトさせる機能)がALBで提供されたので試す。

Elastic Load Balancing Announces Support for Redirects and Fixed Responses for Application Load Balancer

試す

準備

  1. ECSでnginxを立てる
  2. ALBとnginxを紐付ける
  3. ACMTLS証明書の取得
  4. Route53でALBとドメインを紐付ける

既存の設定でhttp/httpsが動いてることを確認

ALBのリスナーでhttpとhttpsをターゲットグループに転送させていることを確認

f:id:y-ohgi:20180728180408p:plain

httpに接続できることを確認

f:id:y-ohgi:20180728180511p:plain

httpsも確認

f:id:y-ohgi:20180728180524p:plain

HSTSを設定してみる

まず既存のhttpのリスナーの編集画面に入る

f:id:y-ohgi:20180728180539p:plain

既存のデフォルトアクションを削除し、「リダイレクト先...」を追加。
次にポートへ「443」を入力

f:id:y-ohgi:20180728180558p:plain

保存する。
以上設定終了。

動作確認

ドメインにhttpでアクセスをし、301リダイレクトがかけられていることを確認

f:id:y-ohgi:20180728180646p:plain

所感

X-Forwarded-Proto とか考えたりしないといけずHSTSは地味に懸念点としてあるので、ALBで吸収してくれるのはとてもありがたい
ついでに単純にhttpsへ301リダイレクトしてくれるだけじゃなく、リダイレクト先もかなり柔軟に設定可能なので積極的に使っていきたい

f:id:y-ohgi:20180728180722p:plain