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

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

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

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

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

目次

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

注記

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

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

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

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

bncert ツールの制限事項

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

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

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

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

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

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

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

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

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

    重要

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

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

次のステップに従って、Lightsail コンソールでブラウザベースの SSH クライアントを使用して WordPress インスタンスに接続します。

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

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

    
            Lightsail のホームページの SSH クイック接続。

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

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

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

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

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

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

      重要

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

      
                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 ありサブドメインへリダイレクトするか、その逆が実行されます。