現在、事業とは関係のないサイトをWordPressとLightningを利用して構築しています。そして、VK All in One Expansion Unitというプラグインも併用する形で作っているのですが、こちらがとても痒いところに手がとどくプラグインとテーマでして(石川さんにごますり)、やはりこういう人の役にたつテーマやプラグインを作らないとあかんな、と勉強になるばかりです。
VK All in One Expansion Unitの機能の一つに、広告の設置機能があります。こちらは、投稿記事の最上部に2点、moreタグ部分に2点、記事最下部に2点の計6点の広告を設置できる機能です。そして、こちらには画像バナー広告もGoogleアドセンス広告も掲載できるとのことでしたので、今回はアドセンスコードを設置してみようと試みました。
アドセンスコードを入力しても保存できない
いざ、アドセンスコードを入力して保存ボタンを押してみるのですが、このような画面になってしまいます。
あれれ?ブラウザで戻ってみるのですが、戻ることはできて挿入したコードもあるのですが、何度試してみ上の画像のようなForbidden Accessというエラーメッセージが出てきてしまいます。
そこで、ちょっと原因を探ってみたのですが、どうもサーバー側で設定してあるWAFに関連しているようでした。
WAF(ワフ)はWeb Application Firewallの略で、Webアプリケーションのぜい弱性を悪用した攻撃からWebサイトを保護するセキュリティ対策です。Webサーバーの前段に設置して通信を解析・検査し、こうした攻撃からWebサイトを保護し、不正ログインを防ぐ役割で用いられます。
早速サーバーのコントロールパネルから調べてみることにしましょう。
CPI(シェアードプランACE01)にコントロールパネルにアクセス
この事案が発生したのはCPI(シェアードプランACE01)でしたので、まずはユーザーポータルからウェブコントロールパネルへアクセスします。
そして、【公開サイト用設定】から【制作ツール】へと進み、【WAF】をクリックします。
すると、WAF(Webアプリケーションファイアウォール)の設定を行うことができます。こちらの「公開サイト WAFの設定状況」が【有効】になっていなければ、現在起きている現象の原因がWAFでないということになりますので、必ず確認しましょう。
【公開サイト検出ログ】部分の【ログを表示する】をクリックして、実際のログを確認してみましょう。
ログを確認する
すると、以下のようなログを確認することができます。現象が発生した日時を照らし合わせて確認してみましょう。
このようにBLOCKと書かれているログに関しては、何らかの原因によってアクセスをブロックしたというログになります。そして、ファイル名を確認すると利用していたプラグインに関連するファイルであることも同時に確認できます。
この先、このアクセスをブロックしないという設定を行っていくので、シグネチャという部分をメモもしくはコピーしておきましょう。このシグネチャ部分のアクセスの設定を変更していきます。
SiteGuard WP Pluginをインストール
では、それらを設定するためのプラグインをインストールします。
WordPress管理画面に戻り、プラグインの新規追加画面へ移動します。そこで「SiteGuard WP Plugin」と検索してみましょう。該当する以下のような表示のプラグインをインストールしてください。
参照:https://ja.wordpress.org/plugins/siteguard/
プラグインの有効化を行うと、ダッシュボードの左サイドバー下部にこのプラグインの設定項目が表示されますのでアクセスしてみましょう。
WAFチューニングサポートの設定
すると、以下のようなメニューが表示されます。その中から、最下部の「WAFチューニングサポート」をクリックして設定へと進みます。
次に、チューニングのルールを設定していきましょう。
ここからは「WAF除外ルール」を設定していきます。
先ほどメモもしくはコピーしておいたシグネチャを入力します。ファイル名・コメントは任意ですので入力しなくても大丈夫ですが、なぜこのシグネチャを設定しているのかを忘れてしまうといけないので、その用途を簡単にコメントしておくと後々便利かもしれませんね。
WAFチューニングサポートをONにしてルールを適応
入力が完了したら以下のような画面になります。
WAFチューニングサポートという機能を動作させたいのでスイッチをONにしましょう。(すでになっている場合には必要ありません)そして、最後に【ルールを適応】ボタンを押して設定は完了です。
実際に確認してみよう
実際に問題が発生した作業をもう一度行ってみましょう。今回はこちらの設定作業で解決することができました。
レンタルサーバーCPIに限らず多くのレンタルサーバーでも最近ではWAFの導入が増えていると思いますので、このような問題に直面された方の参考になれば幸いです。