AWSで無料のSSL証明書を取得

内容

AWSで無料のSSL証明書を取得する

SSL証明書の取得

  • AWSサービスの中から、Certificate Managerを選択
  • 証明書のプロビジョニングの「今すぐ始める」をクリック
  • パブリック証明書のリクエストを選んで「証明書のリクエスト」をクリック
  • webサイトで利用予定のドメインを指定して「次へ」をクリック
  • DNSの検証で「次へ」をクリック
  • タグの作成は任意なので、不要であれば空欄のまま「確認」をクリック
  • 内容に誤りがなければ「確定とリクエスト」をクリック
  • ドメイン横の三角ボタンをクリックしプルダウンを表示
  • ネームサーバーをRoute 53としている場合は、「Route 53でのレコードの作成」をクリックし、「作成」をクリック→成功と表示されればOK
  • 「続行」で完了

SSL証明書をELBに設定

いくつか方法があるが今回はELBに設定する、その中でもALBを使用する
- AWSサービスの中から、EC2を選択
- 「ロードバランサー」→「ロードバランサーの作成」を選択
- Application Load Balancerを選択
- 任意の名前を入力 - VPCを選択し、アベイラビリティーゾーンでは2つ以上(1つはWebサーバーのあるゾーン)、サブネットを選択
- 新しいセキュリティグループを作成→セキュリティグループ名を設定し、ポートは80と443でどこからでもアクセス出来るように、0.0.0.0/0, ::/0 を許可する→作成したセキュリティグループを選択
- リスナーの追加でHTTPとHTTPSを選べるので、HTTPSを選択
- Create target group→インスタンスを選択、ターゲットグループに任意の名前を設定、バージョンはHTTP1で「Next」
プロトコルはHTTP、ポートは80のデフォルト設定でOK→EC2インスタンスとELBはHTTP通信のため
- 「インスタンス」の項目で追加するwebサーバにチェックを入れ、「Include as pending below」をクリックすると、ターゲットにwebサーバのインスタンスが追加される→作成→作成したターゲットを選択
- Default SSL certificateで先程作成した証明書を選択
- 最後に設定が問題ないことを確認し「作成」
- ターゲットグループの一覧からターゲットを確認すると、LB作成前はunusedになっていたが、LB作成後はhealthyになり、アクセスできる状態になった

ロードバランサードメインを紐付ける

EC2インスタンスのポートを設定

  • EC2にはALBからのアクセスのみ許可する場合は、セキュリティグループのインバウンドルールを編集する

以上で「https://〜」のドメインでアクセスすると鍵がかかった状態になっている
証明書情報を見ると、Amazon認証局になり有効期限が来年になっていることが確認できる