【WordPress】突然急増した中国からのbotアクセスを全ブロックした話

こんにちは、はるそめです。

タイトルの通り、中国からの迷惑アクセスが急増したので、中国からのアクセスを問答無用で全部ブロックしてやりました。

ってことで、自転車レースに何の関係もない、ブログ運用の記事でございます。

Contents

中国からの謎のアクセスが急増・・・?

先週あたりから、Google Analytics画面に違和感が・・・。

直近90日間の中国からのアクティブユーザー数推移

なんか、謎に中国からのアクセスが急増してる!!

うちのブログは全て、日本語でしか記事を書いてないんだけど、ワンチャン、「中国に住んでる日本人が読んでくれてる?」なんて思ったものの、そんなわけない。

Google Analyticsで深掘りして確認すると、中国からのアクセスでは404ページが表示されまくってる。

調べてみたところどうやらこいつら、中国のスパムボット。サイバー攻撃の踏み台に使えそうな”資源”を探してるんだそうな。

正直、中国人にブログを読んでもらいたいなんて全く思わないから、botも人間もまとめて、中国からのアクセスを遮断してやろう。逆グレートファイアウォールだ!

ってことで、中国からのアクセスを全ブロックする方法の検討を開始。

中国からのbotアクセスって、実害あるのか?

まずはセキュリティ面。

ざっと調べる限り、ConohaWingのようなちゃんとした企業のちゃんとしたサーバーを利用して、WordPressのバージョンが古いまま放置とかしてなければ、セキュリティ面での実害はないらしい。ただし、放置されたブログとかでセキュリティに穴があると、サイバー攻撃の踏み台に利用されたり、記事の内容が書き換えられて悪意あるリンクが埋め込まれたり、なかなか面倒なことになるっぽい。

問題なのは、Google Analyticsレポートへの影響。

毎日のPV数だったり、どの記事が読まれているか?だったりを定期的に確認してるんだけど、迷惑な中国人のせいで、レポートが雑音まみれに。”一番読まれている記事は404ページ。”みたいな。マジでうざいあいつら。

ってことで、GAレポートの数値からノイズを除去するため、人間であろうがbotであろうが問答無用で中国からのアクセスを全部カットすることに決定。

どうやって中国からのアクセスを全ブロックするか?

さて、中国からのアクセスを全ブロックするにあたって、方法を色々と調べた。(なんで迷惑中国人のために時間使って対策考えなあかんねん。とイライラしながら・・・。)

使用しているサーバーの設定でブロックできないか?とか、WordPressプラグインならどうだ?とか、htaccessの直接編集は?とかとか・・・。

ConohaWingログインページや管理へのアクセスについては、海外からのアクセスを一括ブロックすることは可能だけど、中国だけ全ブロックとかは、できない。
WordPressiQ Block Counry等、いくつかプラグインが存在するものの、どれもパッとしない。それに、できれば迷惑中国botはWordpressに到達される前にお帰り願いたい。

どの方式もパッとしなくて行き着いたのが、CDNサービスである、Cloudflareの無料プラン利用。

※Cloudflareとは??

CloudflareはアメリカのCDNサービス。これを使うことによって、サイト表示速度の高速化させることができたり、サイトへの怪しいアクセスを事前に遮断することができるようになる。

Cloudflareの無料プランを使って中国からのアクセスを全ブロック設定

CDNサービスの導入って言われると大事のように感じてしまうんだけど、導入は超簡単。

①まずは下記ページから無料会員登録して・・・

②ドメインを管理しているサービス(自分の場合は、お名前ドットコム)でネームサーバーをCloudflareのものにするだけ。10分ぐらいですぐに終わる。

ネームサーバーをCloudflareにするだけ

Cloudflareでは、セキュリティルールを設定して、ブロックするアクセスの条件を設定できるんだけど、、、行き着いた設定は下記の通り。

1つ目のルールで、アクセス元が中国だった場合ブロック。これでOKかと思ったものの、少し中国人のアクセスが減ったきがするものの減らず。(依然として、中国蘭州からのアクセスがブロックできない。)

Country equals CN

2つ目のルールが効果抜群で、接続元のネットワークを指定して遮断。これで、中国からのアクセスがゼロになった。

AS Num is in 45102, 45090, 55967, 132203, 37963, 134963, 136907

ちなみにASは”Autonomous System”の略で、厳密には違うんだけど、ざっくり言うと通信キャリア単位で名前付けされてる。例えば、日本の場合だと、NTTドコモやKDDI、ソフトバンクがASに当たる。

で、中国人が使っているであろうAS(≒通信キャリア)からの接続を全部ブロックしてしまえば良いんじゃないかってことで、下記の通り、ASをAS番号を指定してブロック。

ASAS番号
Alibaba(アリババ)AS45102, AS37963, AS134963
Tencent(テンセント)AS45090, AS132203
Huawei(ファーウェイ)AS55967, AS136907

上記設定を実施して24時間運用してみた結果・・・

直近24時間で600強のアクセスを遮断。

GAからも中国からのアクティブユーザーが消えて、超スッキリ!!

まとめ

以上、迷惑な中国からのアクセスを人間/BOT問答無用でブロックしてやったぜ!なブログでした。

まとめると、CloudflareというCDNサービスを導入して、中国または、アリババやテンセントのような中国の代表的なネットワーク(AS)からのアクセスをブロックする設定を実施した結果、ほぼ全ての中国アクセスが消え去って解消。

ちなみに、CDNサービスってサイト表示の高速化にも効果があって、実際、導入後にページ表示速度が上がった気がする。嬉しい副産物!

以上、参考になれば幸いです。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメント一覧 (4件)

  • こちらのブログ、大変参考になりました。
    1点質問なのですが、「セキュリティルールの設定」画面がどこにあるのか分からず、苦戦中でして…。

    どこからアクセスできるのか教えていただけないでしょうか?

  • こんにちは。
    セキュリティルールですが、左サイドバーの”Security”>”Security rules”で設定可能です!

  • コメント失礼します。
    こちらのページを参照にブロックを試みたのですが、
    中国側からの反撃はされていないでしょうか?

  • こんにちは。
    流石に大丈夫だとは思っています。というのも中国からのアクセスは殆どがBOTなので、何も感じないと思いますし、アクセスできない程度でわざわざ攻撃仕掛けてくるとは思えないなと・・・!

コメントする

CAPTCHA

Contents