LoginSignup
225
222

More than 3 years have passed since last update.

AWSでSSL化する方法を伝授!!!

Posted at

はじめに

今回はAWSのロードバランサーを使ってウェブサイトをSSL化する方法を記します。備忘録でもあります。
AWSでは無料でSSLサーバー証明書を発行できます。もう一度言います。無料です!!
すばらしい、、、

SSLサーバー証明書とは

SSLサーバ証明書は、ウェブサイトの「運営者の実在性を確認」し、ブラウザとウェブサーバ間で「通信データの暗号化」を行うための電子証明書で、グローバルサインなどの認証局から発行されます。
SSLサーバ証明書には、ウェブサイトの所有者の情報や、暗号化通信に必要な鍵、発行者の署名データが含まれています。

はい。むつかしいですね。
簡単に言うと、
「このウェブサイトは安心安全なサイトですよ〜」っていう証明書です。
スクリーンショット 2019-10-15 19.55.44.png
こんな鍵マーク良く見ませんか?
有名なウェブサイト/サービスにはほぼ間違いなくついていますね。
この鍵マークがついているウェブサイト/サービスはSSLサーバー証明書が発行されています。

SSL化する理由は大きく2つあります。
①SSL化するとそのサイトとのデータのやり取りが暗号化される。
②Googleおよび国がSSL化を推奨している。
特に②が重要です。
あの天下のGoogleさんが推奨しています。
つまりSSLサーバー証明書が発行されてないサイトはSEOで上がってきません。検索しても全然出てこないです。
やばいですね。長いものには巻かれておきましょう。
他にもSSL化していないと本番環境で使えないgemとかもあります。
とりあえず、やっておいて損はなさそうです。

Certificate Manager

事前準備

EC2を使ってデプロイが完了しておくこと。
ドメインを取得してあり、IPアドレスと紐付けしてあること。

この2項目が完了している方は先に進んでください。
ちなみにドメイン取得はこちらの記事を参考にしてください。
https://qiita.com/nakanishi03/items/25278fb4dfad60ebfac4

①AWSサービス一覧を開き、Certificate Managerを選択
スクリーンショット 2019-10-15 20.16.12.png

証明書のリクエストを選択
スクリーンショット 2019-10-15 20.19.37.png

パブリック証明書のリクエストを選択
スクリーンショット 2019-10-15 20.22.28.png

④ドメインを入力し、次へを選択
スクリーンショット 2019-10-15 20.25.21.png

DNSの検証を選択
スクリーンショット 2019-10-15 20.26.38.png

確認後とリクエストを選択
スクリーンショット 2019-10-15 20.27.41.png

⑦検証保留中になっているはず
スクリーンショット 2019-10-15 20.11.30.png

⑧ドメイン名をクリックすると詳細画面が開きます。
DNS設定をファイルにエクスポートをクリックして、ファイルをダウンロードします。
※写真では状態が発行済みになっていますが、このときはまだ検証保留中のはずです。
スクリーンショット 2019-10-17 21.11.28.png

⑨こんな感じのファイルがダウンロードされます。
スクリーンショット 2019-10-17 21.18.07.png

Route53

route53に移動して、レコードセットの作成を行います。
スクリーンショット 2019-10-17 21.22.12.png

②先ほどダウンロードした値をそれぞれ入れて、レコードを作成する。
名前→Record Name
タイプ→CHAMEを選択
値→Record Value

スクリーンショット 2019-10-17 21.28.27.png

③CHAMEタイプのレコードができたら、放置!!!
数分〜10数分程で発行済みに変わっているはずです。
スクリーンショット 2019-10-17 21.37.22.png

ロードバランサー

続いてロードバランサーの設定に行きましょう!!!あと少しです!!!
EC2に移動し、ロードバランサーを選択
スクリーンショット 2019-10-17 21.41.03.png
②ロードバランサーの作成を選択
スクリーンショット 2019-10-17 21.42.50.png

Application LoadBalanceで作成する
08-02-LBの種類の選択-2.png

step1
名前の欄にELBの名前を入力します。ここの名前はなんでもいいです。適当にアプリ名等にしておきましょう。
08-03-LBの設定-2.png

リスナーをHTTPからHTTPSに変更する。
08-04-リスナー変更前-2.png
08-05-リスナー変更後-2.png

サブネットを選択。ここでは2つ以上選択してください。
08-06-AZ-2.png

step2
先ほどACMで取得した証明書を選択する。
08-07-セキュリティ設定の構成-2.png

step3
HTTPSを許可するように設定する。
08-08-SGの設定-2.png

step4
ターゲットグループの名前とプロトコルを入力する。
名前は任意で大丈夫です。プロトコルはHTTPSにしておきます。
08-09-ルーティングの設定-2.png

step5
ターゲットにEC2インスタンスを登録します。
08-11-ターゲットの登録後-2.png

step6
内容を確認し、作成しましょう。スクリーンショット 2019-10-17 23.05.37.png

ECに移動し、HTTPS通信を許可する記載します。
スクリーンショット 2019-10-17 23.12.35.png

エイリアスの設定

①再びRoute53へ移動し、既に作成済みのAレコードを選択する。
②エイリアスを"はい"に設定し、値に作成したロードバランサーを設定する。
スクリーンショット 2019-10-17 23.15.15.png

動作確認

https://ドメイン名でアクセスすると確認できます。
できてますね。鍵マークがしっかりついています。
スクリーンショット 2019-10-18 0.06.34.png

おわりに

長かった、、、

※お名前.comとawsでドメイン取得
https://qiita.com/nakanishi03/items/25278fb4dfad60ebfac4
こちらも参考にどうぞ

225
222
5

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
225
222