Lightsail WordPress のインスタンスで HTTPS を有効にする - Amazon Lightsail

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Lightsail WordPress のインスタンスで HTTPS を有効にする

WordPress ウェブサイトでハイパーテキスト転送プロトコルセキュア (HTTPS) を有効にすると、訪問者はウェブサイトが安全であること、暗号化されたデータを送受信していることを保証できます。セキュリティで保護されていないウェブサイトのアドレスは http://example.com などの、http で始まり、セキュリティで保護されたウェブサイトのアドレスは https://example.com などの https で始まります。ウェブサイトが主に情報提供を目的としたものでも、HTTPS を有効にすることをお勧めします。これは、HTTPS が有効になっていない場合、ほとんどのウェブブラウザがウェブサイトの訪問者にウェブサイトが安全でないことを通知し、その結果ウェブサイトの検索エンジンの結果でランクが下がるためです。

ヒント

Lightsail には、インスタンスへの SSL/TLS Let's Encrypt 証明書のインストールと設定を自動化するガイド付きワークフローが用意されています。 WordPress このチュートリアルの手動の手順に従うのではなく、このワークフローを使用することを強くお勧めします。詳細については、「 WordPress インスタンスの起動と設定」を参照してください。

このガイドでは、Bitnami HTTPS 設定ツール (bncert) を使用して Amazon Lightsail の Certified by Bitnami WordPress インスタンスで HTTPS を有効にする方法を説明します。これは、リクエスト時に指定するドメインおよびサブドメインに対してのみ証明書を要求することを許可します。また Certbot を使用して、ドメインに証明書を、そしてサブドメインにワイルドカード証明書をリクエストできます。ワイルドカード証明書はドメインのすべてのサブドメインに使用できます。これは、トラフィックをインスタンスに誘導するために使用するサブドメインがどれかわからない場合に役立ちます。ただし、bncert ツールと違い、Certbot は証明書を自動的に更新しません。Certbot を使用する場合は、90 日ごとに証明書を手動で更新する必要があります。Certbot を使用して HTTPS を有効にする方法の詳細については、「チュートリアル:インスタンスで Let's Encrypt SSL 証明書を使用する」を参照してください。 WordPress

目次

ステップ 1: プロセスについて学ぶ

注記

このセクションでは、プロセスの高度な概要を説明します。このプロセスを実行する具体的なステップについては、このガイドの以降のステップで説明します。

WordPress ウェブサイトで HTTPS を有効にするには、SSH を使用して Lightsail インスタンスに接続し、bncertツールを使用して Let's Encrypt 認証局に SSL/TLS 証明書をリクエストします。証明書をリクエストする際は、ウェブサイトのプライマリドメイン (example.com) や代替ドメイン (www.example.comblog.example.com など)を指定します。Let's Encrypt は、ドメインの DNS で TXT レコードを作成するように求めるか、またはそれらのドメインがリクエスト元のインスタンスのパブリック IP アドレスにトラフィックをすでに送信していることを確認することによって、ドメインを所有していることを確認します。

証明書が検証されたら、訪問者を HTTP から HTTPS に自動的にリダイレクト (http://example.comリダイレクト先https://example.com) WordPress するようにウェブサイトを設定して、訪問者に暗号化された接続を強制的に使用させることができます。また、www サブドメインをドメインの頂点 (https://www.example.comhttps://example.com にリダイレクト) またはその逆 (https://example.comhttps://www.example.com にリダイレクト) に自動的にリダイレクトするようにウェブサイトを設定することもできます。これらのリダイレクトは、bncert ツールを使って設定することもできます。

Let's Encrypt では、ウェブサイトで HTTPS を維持するために 90 日ごとに証明書を更新する必要があります。bncert ツールは証明書を自動的に更新するので、ウェブサイトに専念する時間を増やすことができます。

bncert ツールの制限事項

bncert ツールには次の制約事項があります。

  • Certifated by WordPress Bitnami インスタンスの作成時にすべてにプリインストールされているわけではありません。 WordPress しばらく前に Lightsail で作成されたインスタンスでは、ツールを手動でインストールする必要があります。bncertこのガイドのステップ 4 は、ツールがインスタンスにインストールされていることを確認する方法と、されていない場合にインストールする方法を示します。

  • 証明書をリクエストできるのは、リクエスト時に指定したドメインおよびサブドメインに対してのみです。ドメインの証明書とサブドメインのワイルドカード証明書のリクエストを可能にする Certbot ツールとは異なります。ワイルドカード証明書はどのサブドメインにも使用できます。これは、トラフィックをインスタンスに誘導するために使用するサブドメインがわからない場合に役立ちます。ただし、bncert ツールと違い、Certbot は証明書を自動的に更新しません。Certbot を使用する場合は、90 日ごとに証明書を手動で更新する必要があります。Certbot を使用して HTTPS を有効にする方法の詳細については、「チュートリアル:Amazon Lightsail WordPress のインスタンスで SSL 証明書を暗号化しよう」を参照してください。

ステップ 2: 前提条件を完了させる

以下の前提条件を満たします (まだ満たしていない場合)。

  • Lightsail WordPress でインスタンスを作成し、そのインスタンスでウェブサイトを設定します。詳細については、「Amazon Lightsail で Linux/UNIX ベースのインスタンスを使い始める」を参照してください。

  • 静的 IP をインスタンスに添付します。インスタンスを停止してまた開始すると、インスタンスのパブリック IP アドレスは変わります。インスタンスを停止してまた開始しても、静的 IP は変更されません。詳細については、「静的 IP を作成してAmazon Lightsail のインスタンスにアタッチする」を参照してください。

  • WordPress 設定が完了したらインスタンスのスナップショットを作成するか、自動スナップショットを有効にします。スナップショットは、インスタンスに何か問題が発生した場合、これを元に別のインスタンスを作成できるバックアップとして使用できます。詳細については、「Linux または Unix インスタンスのスナップショットの作成」または「Amazon Lightsail のインスタンスまたはディスクの自動スナップショットの有効化または無効化」を参照してください。

  • ドメイン Apex () www とそのサブドメイン (example.com) のトラフィックを Lightsail WordPress のインスタンスのパブリック IP アドレスに転送する DNS レコードをドメインの DNS に追加します。www.example.comこれらのアクションは、ドメインの現在の DNS ホスティングプロバイダーで実行することができます。また、ドメインの DNS の管理を Lightsail に移管した場合は、Lightsail の DNS ゾーンを使用してこれらのアクションを実行できます。詳細については、「DNS」を参照してください。

    重要

    ウェブサイトで使用したいすべてのドメインの DNS に DNS レコードを追加します。 WordPressこれらのドメインはすべて、 WordPress ウェブサイトのパブリック IP アドレスにトラフィックをルーティングする必要があります。bncertこのツールは、 WordPress現在トラフィックをインスタンスのパブリック IP アドレスに転送しているドメインに対してのみ証明書を発行します。

ステップ 3: インスタンスに接続する

Lightsail コンソールのブラウザベースの SSH クライアントを使用してインスタンスに接続するには、以下の手順を実行します。

  1. Lightsail コンソールにサインインします。

  2. Lightsail ホームページで、インスタンスの SSH クイック接続アイコンを選択します。 WordPress

    Lightsail ホームページの SSH クイックコネクト。

    ブラウザベースの SSH クライアントターミナルウィンドウが開きます。SSH 経由でインスタンスに正常に接続されていると、次の例に示すように Bitnami ロゴが表示されます。

    Lightsail コンソールのブラウザーベースの SSH クライアントターミナルウィンドウ。

ステップ 4: インスタンスに bncert ツールがインストールされていることを確認

次のステップを完了して Bitnami HTTPS 設定ツール (bncert) がインスタンスにインストールされていることを確認します。すべての Certified by WordPress Bitnami インスタンスの作成時にプリインストールされているわけではありません。 WordPress しばらく前に Lightsail で作成されたインスタンスでは、ツールを手動でインストールする必要があります。bncertこのステップでは、ツールがインストールされていない場合にツールをインストールする方法を説明します。

  1. bncert ツールを実行するには、次のコマンドを入力します。

    sudo /opt/bitnami/bncert-tool
    • 次の例に示すように、command not found が応答で表示された場合、これは bncert ツールがインストールされていないことを示します。このステップの次のステップに進み、bncert ツールをインスタンスにインストールします。

      重要

      bncertこのツールは Bitnami WordPress によって認定されたインスタンスでのみ使用できます。または、Certbot ツールを使用してインスタンスで HTTPS を有効にすることもできます。 WordPress 詳細については、「チュートリアル:インスタンスで Let's Encrypt SSL 証明書を使用する」を参照してください。 WordPress

      bncert ツールがインストールされていないことを確認するメッセージ
    • 次の例に示すように、Welcome to the Bitnami HTTPS configuration tool がレスポンスで表示された場合は、bncert ツールがインストールされていることを示します。このガイドの「ステップ 5: WordPress インスタンスで HTTPS を有効にする」セクションに進んでください。

      bncert ツールがインストールされていることを確認するメッセージ
  2. 以下のコマンドを入力して、bncert 実行ファイルをインスタンスにダウンロードします。

    wget -O bncert-linux-x64.run https://downloads.bitnami.com/files/bncert/latest/bncert-linux-x64.run
  3. 以下のコマンドを入力して、bncert 実行ファイルへのディレクトリを作成します。

    sudo mkdir /opt/bitnami/bncert
  4. 以下のコマンドを入力して、ダウンロードした bncert 実行ファイルを、作成した新しいディレクトリに移動させます。

    sudo mv bncert-linux-x64.run /opt/bitnami/bncert/
  5. 以下のコマンドを入力して、プログラムとして実行できるファイルを bncert に実行させます。

    sudo chmod +x /opt/bitnami/bncert/bncert-linux-x64.run
  6. 次のコマンドを入力することによって、sudo /opt/bitnami/bncert-tool コマンドを入力すると bncert ツールを実行するシンボリックリンクを作成します。

    sudo ln -s /opt/bitnami/bncert/bncert-linux-x64.run /opt/bitnami/bncert-tool

    これで bncert ツールのインストールは完了しました。このガイドの「ステップ 5: WordPress インスタンスで HTTPS を有効にする」セクションに進んでください。

ステップ 5: WordPress インスタンスで HTTPS を有効にする

bncertツールがインスタンスにインストールされていることを確認したら、 WordPress 次の手順を実行してインスタンスで HTTPS を有効にします。

  1. bncert ツールを実行するには、次のコマンドを入力します。

    sudo /opt/bitnami/bncert-tool

    次の例に示すようなメッセージが表示されます。

    bncert ツールの実行

    bncert ツールがしばらく前にインスタンスにインストールされていると、ツールの更新バージョンが利用可能であることを示すメッセージが表示される場合があります。次の例に示すように、ダウンロードすることを選択し、sudo /opt/bitnami/bncert-tool コマンドを入力して bncert ツールを再度実行します。

    bncert ツールの新しいバージョンが利用可能であることを示すメッセージ
  2. 次の例に示すように、プライマリドメイン名と代替ドメイン名の間はスペースで区切って入力します。

    ドメインがインスタンスのパブリック IP アドレスにトラフィックをルーティングするように設定されていない場合、bncert ツールは、続行する前にその設定を行うように要求します。ドメインは、bncert ツールを使用して HTTPS を有効にしているインスタンスでのパブリック IP アドレスにトラフィックをルーティングする必要があります。これはドメインを所有していることを確認し、証明書の検証として機能します。

    プライマリドメイン名と代替ドメイン名の入力
  3. bncert ツールは、ウェブサイトのリダイレクトの設定方法を尋ねます。使用できるオプションは次のとおりです。

    • HTTP から HTTPS へのリダイレクトを有効にする - HTTP バージョンのウェブサイトを閲覧するユーザー (例: http:/example.com) を自動的に HTTPS バージョン (例: https://example.com) にリダイレクトするかどうかを決定します。すべての訪問者が暗号化された接続を使用するように強制されるため、このオプションを有効にすることをお勧めします。Y を入力して Enter を押すると、有効になります。

    • www なしから www ありへのリダイレクトの有効化 - ドメインの頂点 (例: https://example.com) まで閲覧するユーザー を自動的にドメインの www サブドメイン (例: https://www.example.com) にリダイレクトするかを指定します。このオプションを有効にすることをお勧めします。ただし、ドメインの頂点を Google のウェブマスターツールなどの検索エンジンツールで希望のウェブサイトアドレスとして指定した場合、または頂点が IP を直接指しており、www のサブドメインが CNAME レコードを介してリファレンスしている場合は、無効にして代替オプションを有効にすることをお勧めします(www ありから www なしへのリダイレクトを有効化)。Y を入力し、Enter を押して有効にします。

    • www ありから www なしへのリダイレクトを有効にする - ドメインの www サブドメイン (例: https://www.example.com)まで閲覧するユーザーを、自動的にドメインの頂点 (例: https://example.com) にリダイレクトするかを指定します。www なしから www ありへのリダイレクトを有効にした場合は、これを無効にすることをお勧めします。N を入力し、Enter を押して無効にします。

    選択した結果は次の例のようになります。

    ウェブサイトのリダイレクトオプション
  4. これから実行される変更が一覧表示されます。Y と入力し、Enter を押して確認し、続行します。

    変更の確認
  5. Let's Encrypt 証明書に関連付けるメールアドレスを入力し、Enter を押します。

    E メールアドレスを Let's Encrypt 証明書に関連付ける
  6. Let's Encrypt サブスクライバー合意書を確認します。Y と入力し、Enter を押して契約に同意し、続行します。

    Let's Encrypt サブスクライバー契約を確認する

    これらのアクションは、証明書のリクエストや指定したリダイレクトの設定など、インスタンスで HTTPS を有効にするために実行されます。

    実行中のアクション

    次の例のようなメッセージが表示された場合は、証明書は正常に発行され、検証され、インスタンスでリダイレクトが正常に設定されています。

    アクションが正常に完了しました

    bncert ツールは、有効期限が切れる前、 80 日ごとに証明書の自動更新を実行します。インスタンスで追加のドメインやサブドメインを使用し、それらのドメインで HTTPS を有効にする場合は、上記のステップを繰り返します。

    これで、 WordPress インスタンスでの HTTPS の有効化が完了しました。本ガイドのステップ 6: ウェブサイトで HTTPS を使用しているかどうかをテストするセクションに進んでください。

ステップ 6: ウェブサイトで HTTPS を使用しているかどうかをテストする

WordPress インスタンスで HTTPS を有効にしたら、bncertツールの使用時に指定したすべてのドメインを参照して、ウェブサイトが HTTPS を使用していることを確認する必要があります。次の例に示すように、各ドメインにアクセスすると、セキュリティで保護された接続を使用していることがわかります。

注記

変更を確認するには、ブラウザのキャッシュを更新し、消去する必要がある場合もあります。

セキュアなウェブサイトの確認

bncert ツールの実行時に選択したオプションに応じて、www なしアドレスがドメインの www ありサブドメインへリダイレクトするか、その逆が実行されます。