最初の結論:使っていないなら制限候補、使っているなら代替を確認する
XML-RPCは、WordPressへ外部から投稿や操作を行うために使われてきた通信機能です。現在はREST APIが使われる場面も増えていますが、古いアプリ、外部ツール、一部プラグインがXML-RPCに依存している場合があります。
攻撃対象になりやすい機能として話題に上がりますが、全サイトで即削除というより、利用有無を確認し、不要なら制限するという順番が安全です。
XML-RPCを止めると影響が出る場所
影響が出やすいのは、スマートフォン投稿アプリ、外部エディタ、古い連携サービス、Jetpack系の一部機能などです。普段使っていないサイトなら影響は小さいこともあります。
一方で、ブルートフォース攻撃やピンバック悪用の入口になる可能性があるため、使わない機能を開けたままにする理由は多くありません。
| 確認対象 | 止めたときの影響 | 判断 |
|---|---|---|
| スマホ投稿アプリ | 投稿や編集が失敗することがある | 使っていなければ影響小 |
| 外部連携ツール | 接続エラーになる可能性 | 連携方式を確認 |
| ピンバック | 通知やリンク通知に影響 | 不要なら制限しやすい |
| REST API | 別機能なので直接の代替になる場合あり | プラグイン仕様を確認 |
使っていないなら制限候補、使っているなら代替を確認するために最初に見る画面
無効化前に見る順番では、設定画面だけで判断せず、公開ページ・一覧ページ・関連機能を合わせて確認します。特に「保存できた」ことと「読者が困らない」ことは別です。
作業前には、現在の状態をスクリーンショットやメモで残します。undefinedを控えておくと、変更後に違和感が出たとき、どこへ戻せばよいか判断しやすくなります。
私、使っていないと思って止めたら、あとで何か壊れそうで怖いです。
その感覚は正しいよ。
止める前に、使っている外部ツールを一つずつ見るだけで事故はかなり減る。
スマホから投稿していないなら、まず候補は少なそうですね。
うん。
普段の投稿方法を思い出すところから始めればいい。
無効化前に見る順番
XML-RPCは、止める前の棚卸しが大切です。いきなり無効化せず、サイトの使い方から確認します。
- スマートフォンアプリや外部エディタから投稿していないか確認する
- Jetpackなど外部連携プラグインの利用状況を確認する
- アクセスログで xmlrpc.php への大量アクセスがないか確認する
- ステージング環境や低アクセス時間帯で制限を試す
- 投稿、更新、外部連携が問題なく動くか確認する
「セキュリティに良さそう」だけで止めると起きること
よくある失敗は、利用している連携を把握しないまま止めることです。表では小さな変更に見えても、投稿アプリや監視ツールが止まると日常運用に影響します。
もう一つは、止めたことで安心しきることです。XML-RPCの制限は対策の一部であり、管理者ユーザー、二段階認証、更新、バックアップも合わせて見ます。
| 状況 | 起きやすい失敗 | 確認する場所 |
|---|---|---|
| 外部アプリで投稿している | 投稿が失敗する | アプリの接続方式 |
| xmlrpc.phpへ大量アクセスがある | 負荷や攻撃試行が続く | サーバーログやセキュリティログ |
| 制限後に安心する | 別の入口を見落とす | REST APIや管理者権限 |
ケース別の判断
個人ブログ、企業サイト、アフィリエイトサイトでは、無効化前に見る順番の判断が少し変わります。個人ブログなら運営者が戻せる範囲を優先し、企業サイトなら問い合わせや信頼情報が消えないことを優先します。
アフィリエイトサイトでは、商品導線、関連記事、カテゴリ導線が崩れると収益にも影響します。対象設定だけでなく、読者が次に押すリンクまで確認することが大切です。
| サイトの状態 | 優先する確認 | 理由 |
|---|---|---|
| 個人ブログ | 戻し方とバックアップ | 自分で復旧できることが重要 |
| 企業・店舗サイト | 問い合わせと信頼情報 | 読者が連絡できない状態を避ける |
| アフィリエイトサイト | 商品導線と関連記事 | 比較や申込みへの流れを壊さない |
公式情報を読むときの注意点
公式情報は、機能の正しい意味を確認するために使います。ただし公式ドキュメントは一般的な説明なので、自分のテーマ、プラグイン、サーバー設定にそのまま当てはめないことも大切です。
影響が出やすいのは、スマートフォン投稿アプリ、外部エディタ、古い連携サービス、Jetpack系の一部機能などです。普段使っていないサイトなら影響は小さいこともあります。 この事実を踏まえた上で、自分のサイトではどの機能を使っているのか、どの読者導線に関係するのかを確認します。
止める以外の選択肢
完全無効化以外にも、特定機能だけ止める、アクセス元を制限する、セキュリティプラグインで防御する、サーバー側で制限する方法があります。
どれを選ぶかは、XML-RPCを使っているか、攻撃アクセスがあるか、外部連携が必要かで変わります。初心者は、まず使っていない連携を確認してから制限を検討するのが現実的です。
やってはいけない判断
- 検索で見た一文だけを理由に設定を変える
- 公開ページを確認せず管理画面だけで完了にする
- 戻し方やバックアップを用意せず一括変更する
- 読者が使う導線より運営者の好みを優先する
- 問題が出たときに変更前の状態を説明できないまま進める
この5つを避けるだけで、初心者の失敗はかなり減ります。特によくある失敗は、利用している連携を把握しないまま止めることです。
私はスマホ投稿も外部ツールも使っていないので、まずアクセスログを見てもらいます。
その順番なら判断しやすいね。
使っていないことが分かれば、制限もしやすい。
止める前に、使っているものを思い出す。
これならできそうです。
うん。
難しい名前に引っ張られず、自分の使い方から見るのが一番だよ。
よくある質問
XML-RPCは必ず危険ですか?
機能そのものが即危険というより、使わないまま公開されて攻撃対象になることが問題です。利用有無を見て判断します。
REST APIを使っていればXML-RPCは不要ですか?
多くの新しい連携はREST APIを使いますが、すべてではありません。利用中プラグインや外部アプリの仕様を確認してください。
無効化後は何を確認しますか?
投稿、メディア操作、外部連携、監視ツール、スマホアプリの動作を確認します。
次にやること
サーバーログやセキュリティログで xmlrpc.php へのアクセスを確認し、外部投稿アプリを使っていないか棚卸ししてください。