WordPress WordfenceセキュリティプラグインのIPブロック方法

WordPress サイトを運営してみると、望ましくないトラフィックのために頭痛を患うことが多いです。悪意のあるボットの多くはサーバーファイアウォールからフィルタリングされていますが、それを突き抜けてページをランダムに掻くボットも少なくありません。このようなボットが短時間で繰り返し接続すると、サーバーリソースが不要に消費され、サイトの応答速度が遅くなったり、ひどい場合にCPU使用量が急増してサイトがダウンすることもあります。

このようなときは、過度に接続するIPを把握し、サーバーファイアウォールやWordfenceなどのセキュリティプラグインから直接ブロックすることが効果的な対応方法になることがあります。この記事では WordPress 人気のセキュリティプラグインであるWordfenceを使用してIPをブロックする方法を見てみましょう。

WordPress WordfenceセキュリティプラグインのIPブロック方法

悪意のあるボットをブロックする方法

私は、この WordPress ブログを10年以上運営してきて、悪性ボットの無差別的な接続はもちろん、実際のディドス(DDoS)攻撃でサーバーがダウンしたり、極端に遅くなる状況を何度も経験しました。攻撃が発生するたびにウェブホスティング会社に問い合わせてアドバイスを求め、それに応じて対応してきました。そしてその過程でそれなりに効果を見た方法を見つけることができました。

特に、昨年8月から9月まで、1ヶ月ほどは激しいディドス攻撃に苦しんでいました。初めて攻撃を受けた時はあまりにも慌てて正しく手を書けませんでしたが、攻撃が繰り返され次第に対応コツが生じ始めました。

また、悪意のあるボットが突然急増し、サーバーが非常に遅くなったりダウンしたりする現象を経験したりしました。この場合、クラウドフレア(Cloudflare)と連動して、実際のユーザーが通過し、ボットだけをブロックする方法が効果的かもしれません。

ディドス攻撃を受けて以来、私はCloudflareと連動して使用していましたが、クラウドフラワーのためサイトのレイアウトが壊れる現象が発生し、クラウドフレアとの連動を解除しました。代わりに、Wordfenceプラグインの速度制限(Rate Limiting)設定で防御していますが、効果的なようです。

4段階ファイアウォールブロック方式

過度に接続するIPをブロックする方法としていくつかあります。トラフィック削減の面では、クラウフレアを活用することが効果的です。サーバーに到達する前に処理するので、サーバーリソースを節約できます。

Cloudflare(一次防御線 - ネットワークエッジ)

  • 特徴: サーバーのチラシでトラフィックを処理するため、サーバーの帯域幅とリソースをまったく消費しません。
  • 活用: 海外足 DDoS(分散サービス拒否攻撃)、特定の国のブロック、未知の大規模な自動化ボットのブロックに最適です。

サーバーファイアウォール(例:Cloudwaysファイアウォール)(2次防御線 - サーバーOSレベル)

  • 特徴: クラウドウェイズ管理パネル(Security » Firewall)で設定し、サーバーファイアウォールはすぐにパケットをブロックします。
  • 活用: Cloudflareを経由せずにサーバーIPに直接入ってくる悪意のあるIPや、継続的にサーバーを悩ませる特定のIPを源泉封鎖する場合に適しています。
クラウドウェイズファイアウォール

.htaccess(3次防御線 - Webサーバーレベル)

  • 特徴: Apache / LiteSpeed Webサーバーは要求を受け取りますが、PHPやデータベースを呼び出さずにこするロールだけを実行した後、すぐに拒否します。
  • 活用: 特定のファイルアクセス制限、ユーザーエージェント(User-Agent)ベースのブロック、個々のIPピンポンのブロックに役立ちます。 (ただし、ルールが長すぎるとWebサーバーのパフォーマンスにわずかな影響を与える可能性があります)

Wordfence(4次防御線 - アプリケーションレベル)

  • 特徴: WordPress PHPコードが動作してからスキャンするので、最も重いですが、 WordPressの構造(ログイン、コメント、データベースクエリ)を正確に理解してブロックします。
  • 活用: 管理者ページ 無差別代入攻撃(Brute Force)、悪意のあるコメント/スパム、 WordPress 脆弱性攻撃の検出に不可欠です。

サーバーファイアウォールで正しくブロックされていない場合、または.htaccessファイルを介してブロックされない場合は、ワードフェンスファイアウォールでブロックするとブロックされる可能性があります。

<4段階ファイアウォール遮断方式 比較>

比較項目Cloudflare(エッジ)Cloudwaysファイアウォール(サーバーOS).htaccess(ウェブサーバー)Wordfence(WordPress)
ブロック位置サーバー外部
(ネットワークエッジ)
サーバー入口
(OS/OSファイアウォール)
Webサーバー
(Apacheプロセス)
WordPress 내부
(PHP/DB)
サーバー負荷なし(0%)
サーバーが接続自体を知らない
ごく少ない
OSパケットレベル拒否
少ない
PHP未実行、テキスト拒否
高い(注意)
PHPの実行とメモリ消費
トラフィックを節約最高
サーバートラフィックの控除なし
優れ
Webサーバーリソースの消費を防ぐ

ネットワーク接続要求は受け入れられます
悪い
すでにサーバー内部エントリーを完了
PHP/DBの実行未実行未実行未実行実行済み
設定の利便性ダッシュボードUI
(非常に簡単)
Cloudways パネル
(簡単)
.htaccess コードの修正
(注意が必要)
WordPress プラグイン
(非常に簡単)
推奨用途DDoS防衛、国家ブロック、大規模な悪性ボット悪性IP源遮断、連続スクレーパー防御特定のURLアクセス制御、シンプルリダイレクト/ブロックブルトフォースサイン防御、インテリジェントハッキング検出

WordfenceでIPをブロックする

このブログに特定のIPアドレスに繰り返しスパムコメントが付いているので、悩み、WordfenceがIPアドレスをブロックするように設定しました。クラウドウェイズファイアウォールでIPブロック要求を行うことができますが、今後簡単にブロックを解除するためにWordfenceを選択しました。

スパムコメント

特定のIPブロック設定を行うには Wordfence » ファイアウォールに移動し、 ブロックをクリックします。

ワードフェンスファイアウォール

ブロック ページが表示されたら ブロックタイプIPアドレスをクリックして、 ブロック先のIPアドレスブロック理由を入力して このIPアドレスをブロック ボタンをクリックします。

ワードフェンスプラグインのIPアドレスをブロックする

これはブロックリストに追加されます。

ブロックリストから適切なIPエントリを選択し、 ブロック解除 ボタンを押してブロックを停止できます。

ワードフェンスのブロック解除

参照

コメントを残す

コメントを残す