LoginSignup
14

More than 5 years have passed since last update.

EC2内部のSSL証明書からALB + ACMへの移行手順

Posted at

EC2内部にファイル保存しているSSL証明書から、AWSのマネージドSSL証明書ACMに移行する手順です。ACMはEC2に直接つけられないため、EC2の前段にALBをかませる必要があります。

LU88wc5EK2Wv59AN-21BC0 (1).png

ACM証明書を作成する

  • AWS Certificate Managerを開く(ALBを作成するリージョンを選択する)
  • 証明書のリクエスト -> hoge.example.com 、「別の名前を追加」から *.hoge.example.comを入力する。

ALBを作成するサブネットを作成する(存在しなければ)

  • ALBは2つ以上のAZに配置する必要があるので、ここではAZ-AとAZ-Cに一つずつ作成する
  • ルーティングにInternet Gatewayへの経路を入れる

ALBにつけるセキュリティグループを作成する

  • グローバルからのHTTPS(443)アクセスを許可する

ALBを作成する

  • EC2 -> ロードバランサー -> ロードバランサーの作成 -> Application Load Balancerを選択

ロードバランサーの設定

基本的な設定

  • 名前:任意
  • スキーマ:インターネット向け
  • IPアドレスタイプ:ipv4

リスナー

  • ロードバランサーのプロトコル:HTTPS
  • ロードバランサーのポート:443

アベイラビリティーゾーン

先ほど作成したALB用のサブネットをAZ-AとAZ-Cそれぞれ選択

セキュリティ設定の構成

  • 「ACM から証明書を選択する」-> 作成したACMを選択

セキュリティグループの設定

  • 作成したセキュリティグループを選択

ルーティングの設定

  • ターゲットグループを設定
    • ターゲットグループ: 新しいターゲットグループ
    • 名前: 任意の名前(Webとか)
    • プロトコル:HTTP
    • ポート:80
    • ターゲットの種類:instance
    • ヘルスチェック
      • プロトコル:HTTP
      • パス:/など、200レスポンスが返るところを指定

ターゲットの登録

  • ALB配下に入れるインスタンスを選択 ->登録済みに追加

EC2のセキュリティグループに設定を追加する

ALBからEC2に対してアクセスができるように、EC2のセキュリティグループにALBのセキュリティグループIDからのHTTPアクセス許可を追加

  • タイプ: HTTP
  • プロトコル: TCP
  • ポート範囲: 80
  • ソース: <ALBのセキュリティグループID>

確認

  • ALBに生成されたDNS名にブラウザからアクセスしてみる。
    • 証明書のドメインとALBのドメインが異なるので、ブラウザに「保護されていない通信」と出る。

Route53の設定

  • 設定するドメインのHosted Zoneを選択
  • 設定するドメイン(or サブドメイン)のRecord Setがすでに存在する場合はそれを選択する。ない場合は作成する。
  • Type: A
  • Alias: Yes
  • Alias Target: 作成したALB(プルダウンメニューから選択できる)
    • dualstack.xxxxxxxxx.ap-northeast-1.elb.amazonaws.comみたいな感じの表示になる

確認

  • 設定したドメインに対してHTTPSでアクセスしてみる。
  • ブラウザURLバーの「保護された通信」から証明書を確認してAmazonの証明書になっていることを確認する。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14