この記事ではAWS Certificate ManagerとElastic Load Balancing (ELB) を利用してサイトをSSL(HTTPS)化する方法を解説しています。
前提条件
Route53でドメインを設定し、EC2等のインスタンスのパブリックIPの値を設定できている。
Certificate Managerで証明書をリクエスト
まずはCertificate Managerにアクセスします
Request a certificate
をクリック
Request a public certificate
をクリック
SSL化したいドメインを入力してリクエストします
DNSで証明書の認証
Certificate IDをクリックしてドメインの部分のCNAME nameとCNAME valueをコピーします
ドメインを設定しているサイトのDNS設定からレコードを追加します。
Route53でドメインを購入した場合は以下のような画面になります。
Create Recordを選択
先程コピーしたCNAME nameとvalueをペーストします。
CNAME nameはドメイン部分が重複しないように最後の.sample.com
の部分は削除します。
この設定がうまく行けば数分でIssuedにステータスが変わります。
ロードバランサーの作成
次にEC2からロードバランサーを作成します
Application Load Balancerを選択します。
Load balancerの名前の設定、VPC・サブネットを選択します。
ご自身のtarget groupを選択します。まだ作成していない場合はCreate target groupから作成します。
From ACMの部分で先ほど作成したSSL証明書を選択します。
設定が完了したらLoad balancerを作成します。
Aレコードを編集
Route53の該当ドメインを選択してAレコードを選択します。
Edit recordが出てくるのでAlias to Application and Classic Load Balancer
を選択し、ご自身のリージョンを選択。
3つ目の項目で先程作成したLoad Balancerを選択します。
設定が完了したらSaveします。
HTTPSでアクセス
最後にHTTPSでアクセスできることを確認して完了です。