IP Geo Block (防御能力の高いWPプラグイン) の設定方法

2016年4月8日

IP Geo Block

前回の記事 で導入した IP Geo Block の設定方法でござる。

スポンサーリンク

IP Geo Block を導入すると、

  • コメント投稿
  • XML-RPC
  • 管理領域( wp-admin )
  • admin-ajax.php
  • admin-post.php
  • プラグイン領域 ( plugins )
  • テーマ領域 ( themes )
  • その他の重要ファイル ( wp-config.php 等 )

↑ この辺りへの国コードによる防御と、
さらに国コードに関係なく、ゼロディ攻撃も防いでくれる。

かなり強固になるので、おすすめ。

インストール

WordPress の管理画面「プラグイン」から
「新規追加」で「IP Geo Block」で検索してインストール

IP Geo Block のインストール

プラグインを有効化したら

「設定」→「IP Geo Block」をクリックして設定画面を開く。

設定

データベースのダウンロード

一番最初にやるのは、データベースのダウンロード

データベースのダウンロード画面

「今すぐダウンロード」をクリックするだけ。

MaxMind の GeoIP と IP2Location のデータベースを勝手にダウンロードしてくれる。

「自動更新」にチェックをつけておけば、月一回、最新の物をダウンロードしてくれる。

リストの設定

リストの設定画面

マッチング規則

ホワイトリストかブラックリストを選択する。

  • ホワイトリスト – 全てを非許可にして、リストに書かれているものだけを許可する。
  • ブラックリスト – 全てを許可して、リストに書かれているものだけを非許可にする。

ブラックリストは、基本的に「全て許可」なので、設定がかなり面倒臭い。
通常はホワイトリストを使う。

マッチング規則の国コード

コメントの投稿やピンバックを許可する国のコード(ISO 3166-1 alpha-2)を
カンマ区切りで入力する。(日本だけ許可するなら「JP」とだけ入力すれば良い)

国コードに優先して検証するIPアドレスのホワイトリスト

「日本人を対象にしたブログだけど、サーバーが海外にある」

とか

「海外在住だけど、日本人向けのブログを書いてる」

とか言う場合は、サーバーの IP アドレスや自分の接続元の IP アドレスをここに入力する。

CIDR なので、単に「192.168.123.45」のような形式でも良いし、「192.168.123.45/24」のようにネットワークの範囲で入力することもできる。

IPアドレスを追加抽出する $_SERVER のキー

ホスト名などを書きたい場合はここに書く。

検証対象の設定

以下は、当方の設定内容である。

検証対象の設定画面

海外からのコメント投稿やピンバックを許可するなら、
「コメント投稿」「XML-RPC」を無効にする必要がある。

管理領域は、「国コードで遮断」と「ゼロデイ攻撃を遮断」両方チェック。

管理領域 ajax/post

通常は、「国コードで遮断」と「ゼロデイ攻撃を遮断」の両方チェックに付けておけば問題ない。

ただし、プラグイン等によっては、
「国コードで遮断」のチェックを外す必要があるかもしれない。

プラグイン領域

「ゼロデイ攻撃を遮断」にチェックをつければ強固だが、
プラグインによっては、「国コードで遮断」か「無効」にする必要がある。

テーマ領域

「ゼロデイ攻撃を遮断」にチェックをつければ強固だが、
テーマによっては、「国コードで遮断」か「無効」にする必要がある。

ちなみに、当方で使用してる WpTHK テーマの場合、
ゼロデイ攻撃を遮断すると、SNS のカウント数が取得できない。

2016/04/12 追記

作者様から直々にコメントをいただきました。
WpTHK テーマで、「ゼロデイ攻撃を遮断」しても、SNS のカウント数を取得できる方法をお教えいただきました。
詳しくは、コメント欄を参照してください。

参考ページ: The best practice of target settings | IP Geo Block (英語)

ログやキャッシュの設定など

ログやキャッシュなどの設定画面

この辺は、お好みで。

ログなどの記録が必要なければ、
「検証の統計を記録」と「検証のログを記録」を無効にする。

設定が終わったら、「変更を保存」ボタンを押して終了。

WordPress

Posted by るな