WordPressに海外IPアドレスからアクセスが来る理由|すべてブロックすべきなのか

※本記事にはプロモーションが含まれています。

WordPressを運用していると、サーバーのアクセスログに海外IPアドレスからのアクセスが記録されることがあります。

「海外からアクセスされている…危険なのでは?」
「全部ブロックした方がいいのでは?」

そう感じる方も多いと思います。

この記事では、実際のログをもとに、海外IPアクセスの正体と、ブロックすべきかどうかの判断基準を解説します。

海外IPアドレスからアクセスが来る理由

① 自動スキャン(Bot)

最も多いのがこちらです。

世界中のサーバーを対象に、以下のようなURLが自動的にチェックされています。

  • /wp-login.php
  • /xmlrpc.php
  • /wp-json/wp/v2/users
  • /.env
  • /.git/config

これは特定のサイトを狙っているわけではなく、インターネット上のWordPressサイトを片っ端から探している状態です。

つまり、海外IPアドレス=あなたが狙われている、ではありません。

② クラウドサービス経由のアクセス

Google、AWS、Cloudflareなどのクラウドサービスを経由したアクセスもあります。

これらは海外IPになることが多く、

  • 検索エンジンのクローラー
  • セキュリティスキャン
  • CDN

など、正常なアクセスも含まれます。

③ 実際の海外ユーザー

可能性は低いですが、実際のユーザーがアクセスしている場合もあります。

特に以下のケースです。

  • 英語記事を書いている
  • SNSで海外から流入
  • ボットではなくブラウザアクセス

ただし、ログを見ると多くの場合はBotです。


実際のログから見る海外IPアクセスのパターン

実際のログを見ると、海外IPからのアクセスには複数のパターンがあります。

パターン① WordPress決め打ちスキャン

www.vivisec.net 104.28.159.68 - - [25/Feb/2026:07:56:46 +0900]
"GET /wp-login.php HTTP/1.1" 403 1795 "-" "Mozilla/5.0"

vivisec.net 104.28.156.107 - - [25/Feb/2026:08:20:38 +0900]
"GET /wp-login.php HTTP/1.1" 403 1795 "-" "Mozilla/5.0"

このアクセスは、トップページを確認せずにいきなりログインURLへアクセスしています。

  • サイト構成を見ていない
  • WordPressを前提にしている

WordPressのログインページ(wp-login.php)は、公開直後からスキャン対象になります。

実際のログからその挙動を詳しく解説した記事はこちらです。

WordPressの「/wp-login.php」スキャンとは│アクセスログ分析

パターン②:サイト確認型スキャン

vivisec.net 133.200.41.128 - - [25/Feb/2026:08:18:28 +0900]
"GET / HTTP/1.1" 301 228 "-" "python-requests/2.32.3"

www.vivisec.net 133.200.41.128 - - [25/Feb/2026:08:18:29 +0900]
"GET / HTTP/1.1" 200 17262 "-" "python-requests/2.32.3"

このタイプは、

  • サイトの存在確認
  • HTMLの取得

を行ってから次の行動に移ります。

スクリプトによる情報収集型スキャンです。

このようなスクリプト系のアクセスでは、User-Agentが簡単に偽装されているケースも多く見られます。

User-AgentとRefererは信用できない|WordPressログから見るBotの偽装例

パターン③ WordPress初期状態を狙うスキャン

vivisec.net 172.68.10.79 - - [26/Feb/2026:08:18:28 +0900]
"GET /wordpress/wp-admin/setup-config.php HTTP/1.1" 403 1795 "-" "Mozilla/5.0"

www.vivisec.net 172.68.10.79 - - [26/Feb/2026:08:18:44 +0900]
"GET /wp-admin/setup-config.php HTTP/2.0" 403 1790 "-" "/wp-admin/setup-config.php"

このアクセスでは、トップページを確認する前にWordPress特有のファイルへ直接アクセスしています。

  • setup-config.phpを直接スキャン
  • /wordpress/パスも試す

WordPress前提のかなり典型的なスキャンです。

setup-config.phpは、WordPressの初期設定時に使われるファイルで、スキャン対象として非常に多く狙われます。

実際のアクセスログから詳しく分析した記事はこちらです。

WordPressの /setup-config.php を探すBotアクセス|アクセスログ分析


海外IPアドレスはすべてブロックすべきか?判断基準

結論から言うと、一律ブロックはおすすめしません。

理由① 正常なアクセスも含まれる

海外IPには以下も含まれます。

  • Googlebot
  • APIアクセス
  • CDN経由通信

これらをブロックすると、

  • 検索順位に影響
  • サイト表示に不具合

が出る可能性があります。

理由② 攻撃は国内IPアドレスからも来る

実際には、日本のIPからのアクセスでも

  • ログイン試行
  • スキャン
  • ボットアクセス

は普通にあります。

つまり、海外だけブロックすれば安全ではないのです。

理由③ IPアドレスは簡単に変えられる

攻撃者はVPNやプロキシを使うため、

  • IPは頻繁に変わる
  • 国単位でのブロックは回避される

という特徴があります。

実際のログを追うと、同一IPでなくても同じ挙動が繰り返されていることが分かります。

Botのアクセスパターンについては、こちらの記事でも詳しく解説しています。

WordPressに毎日同じ手順でアクセスが来る理由|実際のログから見るBotスキャンのパターン


海外IPアドレス対策の正しいやり方

① WAF(Web Application Firewall)を有効にする

まずはこちらです。

  • XserverのWAF
  • CloudSecure
  • サーバー側防御

これで多くの攻撃は自動でブロックされます。

最も効果的なのは、サーバー側での防御です。

Xserverなどのレンタルサーバーには、WAFが標準で用意されており、今回のようなスキャンの多くは自動でブロックされます。

実際にログを見ると、403エラーで弾かれているアクセスが多く、サーバー側の防御が機能していることが分かります。

エックスサーバー公式サイト

② 不要なエンドポイントを閉じる

  • xmlrpc.php → 無効化
  • wp-json → 制限
  • ?author= → ブロック

これだけでスキャンの成功率を大きく下げられます。

③ ログインURLの変更

/wp-login.phpを変更することで、機械的な攻撃の大半を回避できます。

④ ログを観察する

海外IPそのものよりも、

  • どのURLにアクセスしているか
  • どんな挙動か

を見る方が重要です。


海外IPブロックが有効なケース

こういう場合はありです。

  • 完全に日本向けサイト
  • 外部サービスを使っていない
  • 明確に特定国から攻撃が集中している

ただし、それでも補助的な対策として使うのが安全です。


まとめ

  • 海外IPアクセスのほとんどはBot
  • 一律ブロックはデメリットがある
  • IPアドレスよりも挙動で判断するのが重要

WordPressのセキュリティは、誰が来たかよりも、何をしようとしているかを見ることが大切です。


このブログの運営環境

  • WordPress
  • GeneratePress
  • エックスサーバー

エックスサーバー公式サイト