Impervaのコンテンツデリバリネットワーク(CDN)は、以前Incapsula CDNとして知られる独立したサービスでしたが、2014年にImpervaに買収されて以降、Impervaの製品として提供されています。Kinstaでサイトを立ち上げた後、KinstaのCDNの代わりにImpervaのCDNを使用する手順は、こちらのページをご参照ください。

Impervaのインストールと設定

Impervaのアカウントをお持ちでない場合、無料トライアルを利用することができます。

ステップ1

Impervaのコントロールパネル(Cloud Security Console)にログインし、「Application」タブに移動します。

「Application」タブを選択
「Application」タブを選択

ステップ2

Add Your Website」セクションの「Add a website」フィールドにドメイン名を貼り付けます。必ず訪問者がアクセスするドメイン(wwwあり、またはwwwなし、またはサブドメイン)を設定してください。その後、「Add website」をクリックします。

サイトのドメイン名を設定
サイトのドメイン名を設定

ステップ3

これによって、ドメインのDNSレコードの検証が行われます。完了後、現在のDNSレコードとImpervaのSSL証明書の設定画面が表示されます。基本的には、「Add wildcard domain SAN」と「Add naked domain SAN」の両方を選択することをお勧めします(特にwwwありの場合)。例外は、サブドメイン利用時です。サブドメインを使用している場合は、「Add full domain SAN」のみを選択し、「Add naked domain SAN」のチェックは外してください。完了したら、「Continue」をクリックして続行します。

「Add wildcard domain SAN」と「Add naked domain SAN」を選択
「Add wildcard domain SAN」と「Add naked domain SAN」を選択

ステップ4

数分すると、「Activate SSL Support」画面が表示されます。「Let’s start」をクリックし、SSLを有効化します。

「Let's start」をクリックしてSSLを有効化
「Let’s start」をクリックしてSSLを有効化

ステップ5

次の画面では、SSLのインストールに必要なドメインの所有権の確認に使用する、TXTレコードが表示されます。

ドメインの所有権を確認する方法

ドメインの所有権を確認し、SSL証明書をインストールするには、以下2つの方法があります。

  1. メールによる確認
  2. DNS(TXTレコード)経由で確認(推奨)

メールで確認を行うこともできますが、使用可能なメールアドレスに制限があるため、DNSによる確認が推奨されています。以下では、DNS経由の確認方法をご紹介します。コピー(クリップボード)アイコンをクリックして、「Value」の値(globalsign-domain-verification=…)をコピーします。次のステップで、この値を確認用のDNSレコードに追加します。

TXTレコードをコピーして、SSLインストール用のドメインの所有権を確認
TXTレコードをコピーして、SSLインストール用のドメインの所有権を確認

ステップ6

ドメインのDNSを管理している場所にログインし、TXTレコードを追加します。以下は、KinstaのDNSでTXTレコードを追加する手順です。別のDNSプロバイダ(ドメインのネームサーバーがどこに紐付いているかによって、ドメインのレジストラや、他のDNSホスティングである可能性があります)を使用する場合は、手順がやや異なります。

  1. MyKinstaの左側のメニューで「DNS」をクリックします。
  2. DNSレコードを追加するドメインを選択します。
  3. DNSレコードを追加する」をクリックします。
  4. TXT」タブをクリックし、Impervaのコントロールパネルでコピーした値を「コンテンツ」フィールドに貼り付けます。サブドメインにする場合を除き、
  5. ホスト名」は空欄のままにしてください。「DNSレコードを追加」をクリックして、TXTレコードを保存します。
TXTレコードを追加して、SSLで使用するドメインの所有権を確認
TXTレコードを追加して、SSLで使用するドメインの所有権を確認

DNSレコードの伝播には最大1時間かかる場合があります。

ステップ7

DNSの伝播後、Impervaの「I added the TXT records」をクリックして、確認を開始します。

「I added the TXT records」をクリック
「I added the TXT records」をクリック

ドメインの所有権の確認が完了すると、SSL証明書が発行され、SSLが有効になった旨を伝えるメッセージが表示されます(以下スクリーンショット参照)。右下の「Continue」をクリックして、次のステップに進んでください。

「Continue」をクリックしてSSL証明書を有効化
「Continue」をクリックしてSSL証明書を有効化

ステップ8

SSLのインストール・有効化を終えると、DNS情報が表示されます。AレコードとCNAMEレコードの両方をコピーしてください。

ステップ9

次に、サイトをImpervaに紐付けます。以下、KinstaのDNSでの手順を再度ご紹介します。この手順は、お使いのプロバイダによって異なる可能性があります。

  1. MyKinstaの左側メニューから「DNS」をクリックします。
  2. DNSレコードを追加したいドメインをクリック選択します。
  3. ドメインにAレコードがすでに設定されている場合は、編集(鉛筆)アイコンをクリックして、まずは1つ目のIPアドレスに変更します。そうでない場合は、「DNSレコードを追加する」をクリックします。
    1. サブドメインにAレコードを追加する場合を除き、「ホスト名」は空欄のままにしてください(サブドメインの場合は「ホスト名」に追加)。
    2. 「IPv4アドレス」には、Impervaのコントロールパネルに表示されている最初のIPアドレスを貼り付けます。
    3. DNSレコードを変更する」ボタン(変更の場合)または「DNSレコードを追加」(新規追加の場合)をクリックして、DNSレコードを保存します。
      AレコードをImpervaに紐付ける
      AレコードをImpervaに紐付ける

      Impervaに紐付くAレコードを追加
      Impervaに紐付くAレコードを追加
  4. DNSレコードを追加する」を再度クリックし、Impervaの2つ目のIPアドレスのAレコードを追加します。
    1. サブドメインにAレコードを追加する場合を除き、「ホスト名」は空欄のままにしてください(サブドメインの場合は「ホスト名」に追加)。
    2. 「IPv4アドレス」には、Impervaのコントロールパネルに表示されている2つ目のIPアドレスを貼り付けます。
    3. DNSレコードを追加」をクリックして、DNSレコードを保存します。

      Impervaに紐付けて2つ目のAレコードを追加
      Impervaに紐付けて2つ目のAレコードを追加
  5. wwwありのドメインにCNAMEレコードがすでに設定されている場合は、編集(鉛筆)アイコンをクリックして変更します。そうでない場合は、「DNSレコードを追加する」をクリックして「CNAME」タブを選択します。
    1. ホスト名: www
    2. 指定先:Impervaのコントロールパネルに表示されているwwwありのドメイン
    3. DNSレコードを変更する」ボタン(変更の場合)または「DNSレコードを追加」(新規追加の場合)をクリックして、DNSレコードを保存します。
      CNAME(wwwあり)をImpervaに紐付ける
      CNAME(wwwあり)をImpervaに紐付ける

      Impervaに紐付けてCNAME(wwwあり)を追加
      Impervaに紐付けてCNAME(wwwあり)を追加

なお、DNSレコードの伝播には最大1時間かかる場合があります。

ステップ10

DNSの伝播後、Impervaのコントロールパネルに戻り、右下の「Done」をクリックします。これで、セットアップが完了です。

「Done」をクリックすると、最初のセットアップが完了
「Done」をクリックすると、最初のセットアップが完了

ステップ11

DNSを紐付け、セットアップが完了したら、サイト設定画面に移動します。最後に、特定のWordPressのCookieを含むページのキャッシュを制限するために、独自のキャッシュルールを作成します。これによって、意図しない動的データのキャッシュを防ぐことができます。

  1. 左サイドバーから「Cache」を選択し、「Custom Cache Rules」セクションまでスクロールします。「Add Rule」をクリックしてください。

    キャッシュルールを作成
    キャッシュルールを作成
  2. 以下のルールフィルターを設定し、「Add」ボタンで追加します。
    1. if:*Cookie Exists
    2. ==
    3. Value:comment_author|wp-postpass|wordpress_logged_in|edd_items_in_cart|woocommerce_items_in_cart

      キャッシュルールのフィルターを設定
      キャッシュルールのフィルターを設定
  3. 「Editor」フィールドで、追加したキャッシュルールを確認します。

    追加したキャッシュルールはエディターで確認できる
    追加したキャッシュルールはエディターで確認できる
  4. エディターの下にある「Rule Action」のドロップダウンメニューで、「Don’t Cache Resource」を選択します。

    Rule Actionを「Don't Cache Resource」に設定
    Rule Actionを「Don’t Cache Resource」に設定
  5. 最後に「General」の「Rule Name」に任意のルール名(例:wordpress)を追加し、「Save」をクリックします。

    作成したキャッシュルールに名前をつけて保存
    作成したキャッシュルールに名前をつけて保存
  6. 「Cache」ページに戻ると、作成したルールが追加され、有効になっていることを確認できます。

    作成したキャッシュルールが有効になっていることを確認
    作成したキャッシュルールが有効になっていることを確認

これで、ImpervaのCDNのセットアップと設定が完了です。何か問題が発生した場合は、以下の一般的に見られる問題とトラブルシューティング方法をご覧ください。

よくある問題のトラブルシューティング

KinstaサイトにImpervaのCDNを設定した後、問題が生じる可能性があります。以下、一般的に見られる問題のトラブルシューティング方法と設定のヒントをご紹介します。

サイトに変更が反映されない

Impervaを通してサイトを配信すると、キャッシュのレイヤーが追加されるため、キャッシュのクリアが必要です。インストールまたは再インストール後、サイトの変更が表示されない場合、あるいはプラグインが正常に動作しない場合は、以下を含むすべてのキャッシュをクリアしてください。

  1. プラグイン(使用している場合)
  2. テーマ(使用している場合)
  3. Kinstaサイト/サーバーキャッシュ(MyKinstaまたはKinsta MUプラグインから)
  4. Impervaのキャッシュ
  5. ブラウザキャッシュ

キャッシュの競合

Impervaでキャッシュを有効にする場合、以下の点にご注意ください。

  • Impervaのキャッシュは、Kinstaのジオロケーション機能のリダイレクトに干渉する可能性があります。
  • ImpervaのキャッシュにHTMLリソースが含まれていると、サイト訪問者や顧客の個人情報の漏洩につながる恐れがあります。

誤検知によるIPアドレスのブロック

ImpervaでDDoS対策やボット検出、WAFで誤検知が発生した場合、お客様またはサイト訪問者がブロックされる可能性があります。まずはImpervaにお問い合わせいただき、IPアドレスがブロックされている場所を特定し、問題を解決してください。Imperva側の問題でない場合は、弊社カスタマーサポートまでご連絡ください。

プラグインまたはテーマの問題

Impervaのデフォルトルールの中には、一部のプラグインテーマに干渉するものがあります。プラグインやテーマが壊れていたり、正常に動作していない場合は、デバッグ中にImpervaのWAFを無効にしてください。

高度な設定

上記に加えて、お客様のサイトでImpervaのCDNとKinstaのCloudflare統合の両方を利用している場合には、以下のような点にご注意ください。

DDoS対策

DDoS対策の機能がデフォルトで自動設定されており、サイトへのトラフィックがしきい値を超えると、DDoS対策ルールが有効になります。デフォルトのしきい値は1秒ごとに1,000リクエストです。この値は、コントロールパネルの「Advanced DDoS Settings」で変更することができます。

HTTPからHTTPSへのリダイレクト

HTTPからHTTPSへのリダイレクトが推奨されています。コントロールパネルの「Content and Network Optimization」>「Delivery Settings」>「Redirection」で設定可能です。

ログインの保護

KinstaでWordPressのログインページやディレクトリをパスワードで保護している場合は、Impervaでこの機能は有効にしないようにしてください。両方を同時に利用することはできません。

まとめ

ImpervaのCDNに関する問題が発生した場合、サーバー側の問題については、弊社カスタマーサポートでご対応いたします。Imperva側のトラブルシューティングについては、Impervaにお問い合わせいただくか、開発者と協力して操作を行なってください。また、Kinstaニュースレターでは、Cloudflare統合にまつわる最新情報を毎週お届けしています。ぜひご購読ください。