特定の国からのアクセスをブロックするプラグイン「IP2Location Country Blocker」

特定の国からのアクセスをブロックするプラグイン「IP2Location Country Blocker」

WordPressは汎用でたくさんの方に使われている有名なCMSなので、データの構造も同じ。つまりWordPressで作っているサイトだと分かればいろいろと類推できるので悪さをする輩もいると思います。

そんなときに役に立つのがアクセス制限。でも1つ1つIPアドレスを調べてブロックするのは大変だし、なんといっても不正アクセスがあるのは海外からであることが多いハズ。Google Analyticsの統計からみておおよそアクセスしないだろう国からの履歴があってびっくりすることもあるのでは?

グローバルIPアドレス単位でアクセス制限をかけるプラグインとして有名なものに

というのがありますが、国ごとに割り当てられているグローバルIPアドレスはものすごい量があるので設定やメンテナンスが大変・・・。

そんなときに役立つのが今回紹介する【IP2Location Country Blocker】。このプラグインは国ごとに割り当てられているグローバルIPアドレスをデータ化しておき、特定の国からのアクセスをフロントエンド/バックエンドで防止できる便利なプラグインです。

国ごとのアクセス制限ができるプラグインは他にもいろいろありますが、無料で使用できるのはおそらくこのプラグインだけかと思います。

【IP2Location Country Blocker】プラグインの基本的な機能・できること

  1. 国ごとにフロントエンドへのアクセスを制限(許可した国以外からのアクセスを禁止という設定も可)
  2. 国ごとにバックエンドへのアクセスを制限(許可した国以外からのアクセスを禁止という設定も可)
  3. オプションでIPアドレス単位でのブロック/ブロック解除ができる

このプラグインは国や地域のIPアドレス(ジオロケーション)を提供するサイトIP2Locationがリリースしているプラグインなので安心して使用できます。

本記事を参考にWordPressサイトへプラグインの導入を検討される方へ

WordPressは古くから無料で配布されているサイト作成ツール(CMS)で、随時改良が加えられており、さまざまなバージョンが存在します。

さらにWordPressを動かすためのプログラムであるPHP、サイトのデータを保存しておくためのデータベースについても様々なバージョンがあります。

そしてWordPress本体同様にプラグインについてもさまざまなバージョンが存在します。

本記事を参考にプラグインの導入をお考えの方は、以下に留意の上でインストールするようにしてください。

  • テスト環境での動作に基づいた紹介記事ですので、すべての環境で正常に動作するかどうかは不明です
    ※本記事の内容についてはページ内に記載しているプラグインバージョンのものになります。現在のバージョンと異なる場合、機能などが異なる場合があります。
    ※また、テスト環境、テストしたプラグインバージョン等の表示が本文内にない場合、ページタイトル下にある最終更新日当時の情報となりますので、現在のバージョンでは全く違う機能となっているかも知れません。
  • プラグインに無料版と有料版(Pro版)がある場合、特に記載がなければ無料版の情報のみを紹介しています
  • このページでプラグインを使用する際に必要なショートコードやコードなどは、コピーして使用することができますが、環境によっては記号などが文字化けすることがあります。コピーしたのに動作しない場合は特に「”」「’」などの記号を入力し直してみてください。
  • プラグイン本体の動作不具合や質問などは公式サイトのフォーラムなどで行ってください(ここでは質問にお答えすることはできません)

【IP2Location Country Blocker】プラグインの設定画面や表示の日本語化と翻訳

【IP2Location Country Blocker】プラグインは言語の変更に未対応ですので表示のまま設定することになります

【IP2Location Country Blocker】プラグインのインストールと設定

インストール方法

インストールはプラグインの新規追加でプラグイン名を入力して検索してインストールするか、WordPressのプラグイン公式配布ページからダウンロード後、管理画面からアップロードインストールしてください(プラグインの公式ページは本ページ内記載のリンクをクリック、もしくは、WordPress公式サイトで検索してください)。

WordPressを使い始めて間もない方(初心者の方)は、より詳細なプラグインのインストール手順や、インストール時に起こる問題などへの対処方法をまとめた【WordPress】プラグインのインストール&追加方法とエラー対処の方法も併せてご覧ください。

【IP2Location Country Blocker】プラグインの基本的な使い方

インストールして有効化すると画面上に

特定の国からのアクセスをブロックするプラグイン「IP2Location Country Blocker」|Knowledge Base
特定の国からのアクセスをブロックするプラグイン「IP2Location Country Blocker」|Knowledge Base

という表示が出ます。どちらも国情報が古いのでアップデートしてくださいという内容で、上の画像の「Download Now」をクリックしても何も起こりませんでした(私の環境での話です)

ひとまず無視して、管理画面の「Country Blocker」をクリックして「Settings」をクリックします

画面下の方にある

特定の国からのアクセスをブロックするプラグイン「IP2Location Country Blocker」|Knowledge Base

の中の赤枠にあるリンク(どちらでも可)をクリックします

IP2Location LITE(無料のジオロケーションIPアドレスを提供しているサイトです)へ登録します

特定の国からのアクセスをブロックするプラグイン「IP2Location Country Blocker」|Knowledge Base

※登録はメールアドレスとパスワードの入力のみ、無料でできます。登録画面の入力後に届くメールのリンクをクリックすると登録作業が完了します

IP2Location LITEのサイトにログインすると以下のような画面が表示されるのでアクセストークンの内容をコピーします

特定の国からのアクセスをブロックするプラグイン「IP2Location Country Blocker」|Knowledge Base

もう一度プラグインの設定画面に戻り、「Database Name」を「IP2Location LITE DB1」を選択し、「Download Token」へコピーしたアクセストークンを貼り付け、一番下の「Download/Update now」をクリックして

特定の国からのアクセスをブロックするプラグイン「IP2Location Country Blocker」|Knowledge Base

上のようなポップアップ画面が出れば準備完了です。

次に管理画面の「Country Blocker」をクリックして「Frontend」をクリックします

「Enable Frontend Blocking」(フロントエンドでのブロックを有効にする)にチェックを入れます

その下に「choose countries」と薄く表示されているところをクリックしてアクセス拒否する国を追加していきます

※このとき「japan(日本)」を選択すると無限にリダイレクトされてしまうことがありますので注意してください

その下にある「Show the following page when visitor is blocked.」で、アクセス拒否された場合に表示するページの設定をします。選択肢は

  1. 404ページ(ページが見つかりません)
  2. 既にある固定ページ
  3. URLで指定したページ

の3つですので都合に合わせて設定しましょう

さらにオプション機能として

Blacklist the below IP addresses:/特定のグローバルIPアドレスからのアクセスを拒否する

Whitelist the below IP addresses:/特定のグローバルIPアドレスからのアクセスを許可する

Bypass blocking for logged in user./ログインユーザーはアクセス拒否しない

という項目があるので適宜設定しましょう(最後の項目はONにしておくことをおすすめします)

また今回はGDPR向けにフロントエンドの閲覧拒否設定をしましたが、不正アクセス対策でバックエンドへのアクセスを制限したい場合には同じ画面の「backend」タブをクリックして同様に設定すれば制限できます

バックエンドを日本からのアクセスに限定するには

管理画面側(バックエンド)は自身や共同で管理する人以外にアクセスする必要がないわけですから、日本からのみ許可すればセキュリティ対策にもなりますね。

バックエンドを特定の国のみアクセスを許可するには「Country Blocker」をクリックして「backend」をクリックします

「Block all countries except countries listed below.(リスト以外からのアクセスを拒否する)」にチェックを入れ、国の選択肢から「japan」を選んで保存します

これで海外から管理画面へアクセスされるのを禁止できます。

クローラーが巡回できないときは

アクセス拒否した国経由で検索エンジンのクローラーがひょっとしたらアクセスしているかもしれません。検索エンジンへのインデックス登録が遅くなったと感じたら、フロントエンド・バックエンドで「Do not block the below bots and crawlers.
」に拒否しないクローラーを選ぶようにします(基本的にオール許可でいいと思います)。

プラグインのテスト環境&個人的評価

最後に【IP2Location Country Blocker】を動作確認した際の環境と個人的な評価を書いておきます。導入の検討や参考になれば幸いです。

テストした環境

  • テストサーバー:カラフルボックス
  • WordPressのバージョン:4.9.5
  • PHPのバージョン:7.0
  • テーマ:Simplicity2 バージョン2.3.0g
  • プラグインのバージョン:本記事で紹介しているバージョン 2.11.0/最新バージョン 2.26.1
  • 公式サイト(wordpress.org上):https://wordpress.org/plugins/ip2location-country-blocker/
  • 公式サイト(作者サイト):

個人的な評価・感想ほか

  1. 設定のしやすさ:★★★★★
  2. 使いやすさ:★★★★★
  3. おすすめ度:★★★★★

結果の閲覧も「Statistic」タグで確認できますが、結構アクセスあるもんですねぇという印象です

サイトへの支援をお願いします

最後までお読みいただきありがとうございました。本記事の内容がお役に立てましたら幸いです。
今後もよりよい情報を提供し続けることができるよう、投げ銭によるサイトへの支援、およびSNSによる拡散をお願いします

作者:

☆最後までお読みいただきありがとうございました。記事作者のひまあーとです。
☆Wordpressでサイトをカスタマイズしていく上で有用な情報を配信しつつ、「ココナラ」でサイトカスタマイズのお手伝い、不具合の修復、サイト引っ越し代行などをさせていただいております。

年齢:40代 趣味/園芸・ペット・卓球