ロリポップのWAFでWordPressが表示されない時の解決法と、WAFの誤検知をなくすための設定について解説
ロリポップレンタルサーバーにはウェブサイトへの攻撃を自動で検知し、
ブロックするWAF(ウェブアプリケーションファイアウォール)というセキュリティ機能が標準搭載されています。
ウェブのセキュリティ対策には様々なタイプが存在しますが、
WAFはその中でも主流とも呼べる対策です。
効果が高いぶん運用が難しいという欠点がありますが、ロリポップレンタルサーバーのWAFは
サーバー側で運用されるため、ユーザーは機能をオンにしているだけでウェブサイトの高いセキュリティを保つことができます。
とても心強い機能ですが、ウェブサイトで利用しているアプリケーションによってはエラーが出てしまい、
サイトが表示されなくなるなどのトラブルが起こることがあります。
特に、WordPressのようなCMSを使っている場合にトラブルが起こることが少なくないようです。
高いセキュリティを保つことは大切ですが、肝心のウェブサイトが表示されなくてはセキュリティも何もありませんよね。
というわけで今回はWordPressで運営しているサイトが、WAFの影響で表示されなくなった場合の対策について解説します。
サイトが表示されなくなった原因がWAFかを調べる方法
WordPressでサイトが表示されないという経験をしたことがある方、少なくないと思います。
サイトが表示されなくなる理由には、インストールしたプラグインとの相性問題や、
WordPressのファイルに誤った記述をしてしまうといったユーザーのミスによるものも多いのですが、
思いあたる原因がない場合はWAFの影響を疑ってみましょう。
WAFが原因かどうかは、レンタルサーバーのユーザー管理ページ内にあるWAF検知ログをみればわかります。
まずはユーザー管理ページへログインし、左メニューにある「セキュリティ」>「WAF設定」をクリック。
WAF設定をクリック
WAF設定ページには、
レンタルサーバーに登録している独自ドメインとサブドメインのWAF設定状況が表示されています。
サイトが表示されなくなったドメインの項目にある「ログ参照」ボタンをクリック。
WAFの検知ログが表示されます。
ここでは、過去7日分のWAFの検知ログをみることができます。
この画面ではエラーは表示されていませんが、
仮に検知ログがあった場合はその「日時」や「URL」、「アクセス元のIP」などが表示されます。
WAFが原因でWordPressが表示されなくなっている場合、
利用しているWordPressのアドレスなどがURLの欄に表示されているはずです。
上記のような場合、WordPressサイトが表示されなくなったのは実際に外部から攻撃を受けたためではなく、
攻撃だと誤検知されてWAFにブロックされたからだといえるでしょう。
次項では、サイトを再度表示させる方法について解説します。
WAFを無効にする方法
もし、WAFが原因でWordPress等のサイトが表示されなくなっているのなら、
一旦機能をオフにしましょう。
ユーザー管理ページへログインし、左メニューにある「セキュリティ」>「WAF設定」をクリック。
WAF設定画面が表示されるので、WAF機能をオフにしたいドメインの項目にある「無効にする」ボタンをクリックしてください。
これでWAF機能が無効化されるはずです。
設定が反映されるまでには5~10分かかるため、しばらく待ってからWordPressにアクセスしてみましょう。
WAFが問題でサイトが表示されなくなっていたのなら、これで解消するはずです。
なお、多くのユーザーはサイトが表示されてひと安心…となってしまうかもしれませんが、
WAFをオフにするということはウェブサイトのセキュリティが弱まるということであり、
この状態のままでサイトを運営し続けることはお勧めしません。
とはいえ、WAFをオンにすると誤検知でサイトが表示されなくなってしまいますから、どうしようもありませんよね。
なんとかWAFを利用したい。
そんな方は、次項で解説している方法をお試しください。
WAFの誤検知を防ぐための設定について
WAFが原因で運営しているサイトが表示されなくなった。
しかしWAFを無効にしたら、またサイトが表示されるようになったので一安心。
ここで終わってしまっている人もいるかもしれませんが、WAFの機能を無効にしたままでサイト運営を続けるのはお勧めできません。
せっかく、サーバー側で強固なセキュリティ機能を提供しているというのに、
使わないのはもったいないですし、サイトにトラブルが起こった場合に周りに迷惑をかける可能性もないとはいえません。
しかし、WAFを有効にするとサイトが表示されなくなってしまうので、
使いたくても使うことができない…なんて方もおられると思います。
そのような場合は、以下の対応を行ってみてください。
前の項で説明しましたが、WAFが原因でサイトが表示されなくなった場合、
WAF検知ログに原因を突き止めるログが表示されるはずであるため確認しましょう。
WAF検知ログには、攻撃を検知した「日時」と「URL」、そして「アクセス元IP」や「検出されたシグネチャ」が表示されますので、
その内容を確認したうえでブロックされているアクセスを許可する設定を行います。
必ず「URL」や「アクセス元IP」をみて、自分のアクセスによるものであることを確認してください。
まず、WAF検知ログにある「検出されたシグネチャ」の内容を確認します。
ユーザー専用ページの「セキュリティ」>「WAF設定」>対象ドメインの「ログ参照」より、WAF検知ログをみることが可能です。
日時やURLの下部の欄に記載されている、検出されたシグネチャ(英語からなる文字列)を確認してください。
例えば「SiteGuard_User_ExcludeSig」のような短い文字列です。(全てがこの文字列の通りではありません)
その文字列を、運営サイトのデータを保存しているサーバーディレクトリ内にある「.htaccess」ファイルに記載します。
サーバー上にある「.htaccess」ファイル
「.htaccess」ファイルがない場合は、作成してください。
「.htaccess」ファイルを開き、先ほど確認した「検出されたシグネチャ」の文字列を入力します。
検出されたシグネチャ(文字列)を「.htaccess」ファイルに書きこむ
もし、検出されたシグネチャが複数ある場合は、「.htaccess」ファイルに1行ずつ文字列を記載するようにします。
シグネチャを「.htaccess」ファイルに書きこむことで、次回より不正なアクセスとしてブロックされることはなくなります。
WAFを有効にしても、サイトは正常に表示されるはずです。
できるだけWAFは有効にしておくこと
WordPressのようなウェブ上に公開されているアプリケーションは、
ユーザーだけでなく攻撃者によるアクセスが可能であるため、攻撃の標的になりやすいという特徴があります。
OSやサーバーを狙った攻撃は、従来からあるファイアウォールやIDS(侵入検知)、IPS(侵入防止)などで防御できますが、
ウェブアプリケーションに対する攻撃をそれらで防ぐことはできません。
しかしWAFなら、他のセキュリティ対策では十分に防ぎきれないウェブアプリケーションへの攻撃を検知、ブロックできるため、
ウェブサイトのセキュリティ対策としては今や欠かせないといえるでしょう。
サイトが表示されなくて鬱陶しいから…という理由で、安易に無効にしてしまわないようにしましょう。
関連記事
|