AWS WordPressブログ

【AWS解説】SSL証明書を取得してブログをhttps通信化する方法

悩んでるひよわ
ブログのSSL化が必要みたいな話を聞いたけど、SSL化ってどういうこと?

 

当記事では、AWSでワードプレスなどのwebサイトを運営されている方向けに、AWSを使ったサイトのSSL通信化方法について解説します。

 

そもそもSSL通信とかhttpsって何?という状態の方でも分かるように解説していますので、ちょっと難しいですが、根気よく設定してみてください!

スポンサーリンク

 

1.SSL化とは

SSL化とは一言で言うとサイトとサイト観覧者との間で行われる通信をより安全にすることで、http通信からhttps通信に変更することを言います。

 

悩んでるひよわ
httpとかhttpsって?

 

http通信とは

httpとは簡単に言うと、サーバとクライアント(PCやスマホ端末)間で通信する際のルールのことです。
 

ちょっと専門的に言うとプロトコルなんて言います。


 
例えばもしみなさんが海外旅行で言葉が全く分からない国へ行き、お店で買い物をするとします。
 

貨幣で商品と交換すると決まっているので、値段が記載されていて手元に現金さえあれば、言葉が分からなくてもちゃんと欲しいものを手に入れられますね。

 

これが国によってうちは貨幣じゃなくてバトルして買ったら提供してるんだよね。なんてことになっていたら大変です。

 

インターネットも世界中で通信することを前提としているので、こういった共通のルールが必要なのです。そのルールの代表的なものがhttp通信です。

 

https通信とhttps通信の違い

それではhttp通信とhttps通信の違いは何かというと、「httpsの方がより安全な通信」と考えていただければ大丈夫です。というのもhttpsの「s」は「安全な」という意味の「secure」の「s」です。http通信で行っている通信を暗号化する方式がhttps通信になります。

 

悩んでるひよわ
逆にhttpは安全じゃないってこと?

 

実際のところhttp通信のリスクがどのくらいなのかは非常に難しいところですが、難しいことは考えずhttps通信に切り替えることが得策です。

 

というのもhttp通信かhttps通信かというのは、ブラウザのURL欄に鍵マークが表示されているかどうかでユーザ側からも判別できます。ブログが大きくなった時のことを考えると信頼性にも関わるため、https化を早期にしておくことをお勧めします。また後回しするとそれまでに獲得した「http」の時の被リンクでアクセスできなくなってしまうので、さっさと設定してしまいましょう!

 

SSL化するまでの流れ


AWS上のwebサイトのSSL化は以下の流れで行います。多少複雑な設定も多くかなり長い手順になってしまうので、この記事では「1.SSL証明書取得」について手順を記載します。

ポイント

  1. SSL証明書取得 
  2. ロードバランサーの作成
  3. ドメインとロードバランサーを紐づける
  4. https通信へのリダイレクト設定


※上の手順はAWS上の現在の構成によって異なります。上記の手順は当ブログの手順に則りEC2-ElasticIP-ドメイン名の紐づけができている状態を前提としています。

 

以下の方は追加で別途作業が必要です。


ドメイン名をまだ取得していない場合→解説記事へ
EC2は作成したがElasticIPは設定していない場合→解説記事へ

 

それでは、いよいよ具体的な手順を解説していきます。

 

SSL証明書の取得

まずはhttps通信を実現するために「SSL証明書」を取得します。

この証明書は、イメージとしてはSMSの二段階認証のようなもので、https通信先が確実にあなたのサイトですよ。ということを証明するために取得し、設定を行います。

 

それではSSL証明書の設定方法について解説します。AWSマネジメントコンソールへアクセスしましょう。

Certificate Manager

まずはAWSログイン後の画面の上部の検索バーに「acm」と検索します。「Certificate Manager」というサービスが表示されたらクリックしてください。

 

以下のような画面に遷移します。左側の「証明書のプロビジョニング」にある「今すぐ始める」を押してください。

 

 

デフォルトの「パブリック証明書のリクエスト」にチェックがついていることを確認し、右下の「証明書のリクエスト」を押します。

 

ドメイン名の追加

ここでは、https通信化させたいサイトのドメイン名を入力します。

Route53に登録したサイトのドメイン名「~.com」や「~.jp」を入力してください。

 

また上の画像の赤線には「*.ドメイン名」と入力することで「www.ドメイン名」などのサブドメインまで適応できるということが書かれています。サブドメイン名については作らない方もいるかと思いますが、後々登録するのも面倒なので今設定しておきましょう。

 

私のブログのURLは「hiyowa-na-engineer.com」なので以下の二つを登録することになります。入力できたら「次へ」を押しましょう。

 

検証方法の選択

次に検証方法を選択します。デフォルトの「DNSの検証」にチェックを入れ「次へ」を押してください。

 

タグの追加

続いてタグを登録します。これは目印のようなものなので、「タグ名」に「Name」、値に分かりやすい名前をつけておきましょう。管理する時に分かりやすくするために設定します。何でも良いです。

 

スポンサーリンク

確認とリクエスト

「確認」を押すと以下のような画面に遷移します。

ドメイン名が間違っていないことを確認し、左下の「確定とリクエスト」を押してください。

 

次の画面で申請したドメインの一覧を確認できます。「~.com」と「~*.com」それぞれ「▶」を押してください。「Route53でのレコードの作成」という赤枠のボタンを選択します。

 

下の画像の「作成」を押します。

 

それぞれ「成功DNS レコードは Route 53 ホストゾーンに書き込まれました。変更が反映され、AWS がドメインを検証するまでに最大で 30 分かかる場合があります。」と表示されます。これで成功です!右下の「続行」を押して完了しましょう。

 

これで、証明書の発行が完了しました。遷移後の画面では証明書の一覧が表示されます。

先ほど申請したものは既に「発行済み」になり、「使用中?」の欄は「いいえ」になっています。つまり今は発行はできているけれど実際に使用はしていない状態です。

 

SSL証明書の準備ができたので、次はSSL証明書をロードバランサーに設定します。後半の手順に進んでください!

 

SSL証明書取得以降の手順

冒頭で記載した通り、SSL化は以下の流れで作業を行います。

ここまでで「1.SSL証明書取得」まで完了しましたね。

ポイント

  1. SSL証明書取得 
  2. ロードバランサーの作成
  3. ドメインとロードバランサーを紐づける
  4. https通信へのリダイレクト設定

 

この先は別記事での解説になります。以下の記事に進んで設定作業を進めましょう。

「2」と「3」の作業へ進む場合

【AWS手順解説】ロードバランサー作成とドメインの設定

続きを見る

 

「2」、「3」の作業が完了して「4」の作業へ進む場合

【AWS画像付き解説】HTTPリクエストをHTTPSにリダイレクトする方法

続きを見る

 

不明点等ありましたら、コメントまたはTwitter(@hiyowa_engineer)にお願いします!

 

 

【完全版】AWSでWordPressを開設する方法・メリット

続きを見る

-AWS, WordPressブログ

© 2022 ひよわさんでもエンジニア