AWS https EC2のSSL化を分かりやすく説明!

AWS EC2 https化

AWS https EC2のSSL化を分かりやすく説明!

他のサイトではSSL化はプラグインで簡単にできると書いてありますが、残念ながらEC2のSSL化は少々手間がかかります。

サイトによって書いていることが異なり、 私も試行錯誤でやっとできるようになりました。

なんで、こんなに複雑なんだと考えていますが、 SSL化の方法をきちんとまとめて以下に示します。

あきらめずに、行うことが重要です。下記の5つのステップで行います。

1) wp-config.php修正

2) WordPress プラグイン追加(Really Simple SSL, SSL Insecure Content Fixer)

3) AWS 証明書の発行

4) AWS ロードバランサの設定

5) AWS 設定したロードバランサをRoute53で選択。

wp-config.php修正

はじめにwp-config.phpの修正を行います。まずTera Termでインスタンスへアクセスします。

Tera Termは窓の杜でダウンロードできます。接続の詳細は下記を参照ください。

viエディタの分からない初心者向けにwinSCPの接続の仕方も載せておきます。

WinSCPの場合はTeraPadで同様に修正を行います。

WinSCP、TeraPadも窓の杜でダウンロードできます。

ホストにサイトのアドレスを入力します。12.123.12.123のような番号です。

ユーザ名にUbuntuを入力。秘密鍵(pemファイル)を選択。

下記のように接続します。

書き込み権限を得るため、下記のように実行します。

cd /opt/bitnami/apps/wordpress/htdocs/

下記のように入力します。

ls -l wp-config.php

おそらく-rw-rと出るはずです。この場合、書き込み権限がオフになっています。

書き込み権限をオンにするため、下記を入力します。

chmod g+w wp-config.php

これで書き込み権限が得られたはずです。

もう一度下記を入力し、-rw-rwとなればOKです。

ls -l wp-config.php

下記を入力します。

sudo vi /opt/bitnami/apps/wordpress/htdocs/wp-config.php

i を押すとインサートとなり、下記の3つを入力します。

入力する場所も下記の図に示しますので同じ場所に入力してください。

$_SERVER[‘HTTPS’]=’on’;

define(‘FORCE_SSL_LOGIN’, true);

define(‘FORCE_SSL_ADMIN’, true);

その後、ESC を押した後、:wq! Enterキーを入力します(保存の呪文です)。

WordPress プラグイン追加

下記の2つのプラグインを入れ、有効化します。

1) Really Simple SSL

2) SSL Insecure Content Fixer

Really Simple SSL はサイトをhttpsで実行するように自動的に設定してくれます。

SSL Insecure Content Fixer は自動的に、非セキュアコンテンツを修正してくれます。

AWS証明書の発行

AWSで証明書の発行を行います。

下記のAWSマネジメントコンソールの下にあるCertificate Managerをクリックします。

下の方のCertificate Managerをクリックします。

検索で Certificate と入力してもOKです。

右上の地域がバージニア北部になっていることを確認し、証明書のリクエストをクリックします。

パブリック証明書ののリクエストをクリックします。

次にドメイン名の入力を行います。

ドメイン名がwww.hogehoge.comの場合、

hogehoge.comと、*. hogehoge.com の2つを必ず入力してください (一番重要)

ここが一番重要です。必ず2つを設定しましょう。

この2つを設定しないと、証明書が発行されません。

私はここでの設定が良く分からず、かなり苦しみました。

次に下記の画面で2つの▶をクリックします。

Route53でのレコード作成をクリックします。

もう一方でも、同様にRoute53でのレコード作成をクリックします。

ロードバランサの設定

SSL化まであともう少しです。がんばりましょう。

次にロードバランサの設定を行います。

ロードバランサの設定を行うため、下記のようにEC2ダッシュボードの左下のロードバランサをクリックします。

下記のようにロードバランサを設定します。

1) リスナーはHTTPとHTTPSを選択。

2) アベイラビリティーはすべて選択。

3) セキュリティーグループではcertified by bitnamiを使用すること。

4) ターゲットの登録でポートは80と443を設定。

設定したロードバランサをRoute53で選択。

最後に、上記で設定したロードバランサをRoute53で選択します。

AWS マネジメントコンソールのRoute53をクリックします。

レコードセットの作成をクリックし、右にある名前にwwwを入力。

エイリアス先に作成したロードバランサを選択し、レコードセットの保存を行います。

http://www.サイト名で確認できれば完了です。

Business card vector created by macrovector – www.freepik.com