WordPress監視・ログ管理
完全ガイド
セキュリティ事故の被害を最小化する鍵は「早期発見」です。アクセスログの読み方・不正アクセスの検出・ファイル変更監視・死活監視(Uptime監視)・操作ログの記録まで、WordPressサイトを常時監視する仕組みを無料ツールを中心に解説します。
📋 目次
このページで解説する内容
🎯 1. なぜ監視が重要か:検出の遅れが被害を拡大する
WordPressへの不正アクセスや改ざんは、発覚までに平均数週間〜数ヶ月かかるケースがあります。この間、攻撃者はサイトを踏み台にしてスパム送信・他サイトへの攻撃・個人情報の窃取を続けています。監視体制を整えることで被害を最小限に抑えられます。
| 監視の種類 | 何を検出するか | 推奨ツール | 費用 |
|---|---|---|---|
| アクセスログ監視 | 不正ログイン試行・スキャン攻撃・異常なリクエスト | サーバーログ・Wordfenceライブトラフィック | 無料 |
| ファイル変更監視 | PHPファイルの改ざん・マルウェア設置 | Wordfence・iThemes Security | 無料 |
| 死活監視 | サイトダウン・応答速度の異常 | UptimeRobot・BetterUptime | 無料〜有料 |
| 操作ログ | 管理画面の不審な操作・不正ユーザー作成 | WP Activity Log | 無料〜有料 |
| Googleサーチコンソール | マルウェア警告・手動ペナルティ | Google Search Console | 無料 |
📋 2. アクセスログの読み方と不正アクセスの検出
アクセスログにはサーバーへの全リクエストが記録されています。不正アクセスの兆候を読み取る方法を解説します。
アクセスログの基本フォーマット
# アクセスログの1行(Combined Log Format)
192.168.1.1 - - [21/Feb/2026:12:34:56 +0900] "POST /wp-login.php HTTP/1.1" 200 1234 "-" "Mozilla/5.0"
# ↑IPアドレス ↑日時 ↑メソッド ↑URL ↑ステータス ↑バイト数 ↑UA
# 要注意のログパターン
# ① wp-login.phpへの大量POST(ブルートフォース攻撃)
grep "POST /wp-login.php" access_log | wc -l
# ② xmlrpc.phpへのPOSTリクエスト(API悪用)
grep "POST /xmlrpc.php" access_log
# ③ 存在しないファイルへのアクセス(スキャン攻撃)
grep '" 404 ' access_log | awk '{print $7}' | sort | uniq -c | sort -rn | head -20
# ④ 短時間に大量リクエスト送信元IP
grep "21/Feb/2026" access_log | awk '{print $1}' | sort | uniq -c | sort -rn | head -20
不正アクセスの典型パターンと対応
🚨 ブルートフォース攻撃の検出
同一IPから/wp-login.phpへのPOSTが短時間に大量発生。対応:Wordfenceのブルートフォース保護を有効化、CloudflareでそのIPをブロック。→ ログインセキュリティ参照
🔍 脆弱性スキャンの検出
短時間に多数の異なるURLへの404エラーが集中。WPScan・Niktoなどのスキャンツールのユーザーエージェントが含まれる。対応:WAFで既知スキャナーのUAをブロック。
🔀 不審なリダイレクトの発見
ログに301や302のレスポンスで外部サイトへの転送が記録されている。マルウェアが.htaccessを書き換えている可能性。対応:マルウェアスキャンを即実施。
SSHが使えるサーバーでは、
GoAccess(無料のオープンソースツール)でアクセスログをリアルタイムにグラフィカルなHTMLレポートに変換できます。goaccess access_log -o report.html --log-format=COMBINEDで攻撃元のIP・地域・パターンを視覚的に把握できます。
📁 3. ファイル変更監視の設定
WordPressのPHPファイルが予期せず変更された場合、マルウェアが設置された可能性があります。ファイル変更を即座に検知する仕組みを設定しましょう。
Wordfenceでファイル変更監視を設定
Wordfenceのスキャン設定を開く
管理画面 → Wordfence → スキャン → 「スキャンオプションとスケジュール」をクリックします。
スキャンスケジュールを設定
自動スキャンを「毎日」に設定。無料版は自動スキャン頻度が制限されますが、毎日手動スキャンでも効果があります。
メールアラートを設定
Wordfence → 全般設定 → 「アラート」で「新しいIPが管理者としてログインした場合」「コアファイルが変更された場合」のアラートを有効にします。
Linuxコマンドでファイル変更を監視(SSH使用・上級)
# 過去24時間以内に変更されたPHPファイルを検出
find /path/to/wordpress -name "*.php" -newer /tmp/reference_file -type f
# 基準ファイルを作成(毎日Cronで実行)
touch /tmp/reference_file
# uploads内のPHPファイル(通常は存在しない)を監視
find /path/to/wordpress/wp-content/uploads -name "*.php" -type f
# ハッシュ値でファイル整合性を検証
find /path/to/wordpress/wp-admin -type f -name "*.php" | xargs md5sum > /tmp/wp_hashes.txt
# 後日比較:
md5sum -c /tmp/wp_hashes.txt 2>&1 | grep FAILED
⏱️ 4. 死活監視(Uptime監視)の設定
サイトがダウンした際に即座に通知を受け取ることで、攻撃やサーバー障害への対応を最速で行えます。
| サービス | 無料プランの監視間隔 | 通知方法 | 特徴 |
|---|---|---|---|
| UptimeRobot | 5分おき(50サイトまで) | メール・Slack・SMS | 最もポピュラー・無料で十分 |
| BetterUptime | 3分おき(10サイトまで) | 電話・Slack・メール | SSL期限切れ監視も無料 |
| Freshping | 1分おき(50サイトまで) | メール・Slack | 複数拠点からの同時チェック |
| Google Search Console | リアルタイム(ただし遅延あり) | メール | SEO問題も同時に通知 |
UptimeRobotの設定手順
UptimeRobot.comでアカウント作成
無料アカウントを作成後、「Add New Monitor」をクリックします。
監視の種類と対象URLを設定
Monitor Type: HTTP(s)、URL: https://yourdomain.com、Monitoring Interval: 5 minutesに設定します。
アラートの連絡先を設定
「Alert Contacts」でメールアドレスを追加。SlackワークスペースのWebhook URLを追加すると即座にSlackに通知が届きます。
📝 5. WordPress操作ログの記録
誰がいつ何をしたかを記録する操作ログは、不正アクセスの調査や複数人運営サイトの管理に必須です。
WP Activity Logプラグインの設定
「WP Activity Log」(旧:WP Security Audit Log)は無料で以下の操作を記録できます。
- ユーザーのログイン・ログアウト・ログイン失敗
- 投稿・固定ページの作成・編集・削除
- プラグインのインストール・有効化・無効化・削除
- テーマの変更・カスタマイズ
- ユーザーアカウントの作成・編集・権限変更
- WordPress設定・パーマリンク設定の変更
- メディアファイルのアップロード・削除
WP Activity Logの無料版ではログがWordPressデータベースに保存されます。攻撃者がデータベースにアクセスできる場合、ログを削除・改ざんできてしまいます。セキュリティインシデントの証拠保全が必要な場合は、ログを外部サービス(Papertrail・Loggly等)に転送する設定(WP Activity Log Premiumの機能)を検討してください。
🔔 6. Wordfenceアラートの最適設定
デフォルトのWordfenceは通知が多すぎて重要なアラートを見逃すことがあります。以下の設定に絞ることを推奨します。
| アラート種類 | 推奨設定 | 理由 |
|---|---|---|
| 新しいIPからの管理者ログイン | ✅ 有効 | 不正ログインを即座に検知 |
| 管理者以外のユーザーログイン | △ サイトによる | 会員サイトは通知が多すぎる場合あり |
| IPがブロックされた | ❌ 無効推奨 | 通知が多すぎて重要なアラートが埋もれる |
| スキャンで問題が検出された | ✅ 有効 | マルウェア・改ざんの検知に重要 |
| WordPressコアが最新でない | ✅ 有効 | 更新忘れを防ぐ |
| プラグインが無効化された | ✅ 有効 | 不正操作の検知 |
🔎 7. Google公式ツールを活用した監視
Googleサーチコンソール「セキュリティの問題」を定期確認
毎週サーチコンソール → 「セキュリティの問題」を確認する習慣をつけましょう。マルウェア検出・ハッキング被害・不審なコンテンツが報告されます。メール通知も有効にしてください。
「インデックスカバレッジ」でSEOスパムを検出
急激にインデックスページ数が増加している場合、SEOスパムページが生成されている可能性があります。「URL検査」で不審なURLが存在しないか確認してください。
Google Analytics「リアルタイム」で不審なトラフィックを確認
通常とは異なる国・地域からの大量アクセスや、不審なランディングページへのアクセス急増はセキュリティインシデントの兆候の場合があります。