直し方ガイド
WordPress の直し方ガイド
診断で WordPress に関する問題が見つかったときの手順です。本体・プラグインの更新、ログイン画面の保護、XML-RPC の制限を、管理画面の操作に沿って説明します。
・約7分で読めます
WordPress を使ったサイトで、診断レポートに次のような問題が出たときの手順です。サーバー会社の管理画面で行う設定は、サーバー会社別のガイドをご覧ください。
作業の前に: 更新や設定の変更の前に、バックアップを取ってください。多くのレンタルサーバーには自動バックアップがあります。取得日と、戻し方を先に確認しておくと安心です。
WordPress 本体・プラグイン・テーマの更新
対象になる検出事項:WordPress のサポートが終了している、最新版ではない、既知の脆弱性がある。
- 管理画面にログインし、「ダッシュボード」→「更新」 を開きます。
- 「WordPress の新しいバージョンがあります」と表示されていれば、「今すぐ更新」 を押します。
- 同じ画面の「プラグイン」「テーマ」で、すべてにチェックを入れて更新します。
- サイトの表示、問い合わせフォーム、管理画面を確認します。
今後のために、自動更新を有効にします。
- 本体:「ダッシュボード」→「更新」に「WordPress のすべての新しいバージョンに対する自動更新を有効にします」という表示があれば、それを選びます。
- プラグイン:「プラグイン」→「インストール済みプラグイン」 の一覧で、各行の 「自動更新を有効化」 を押します。
使っていないものは削除します。 「無効化」しただけのプラグインや、使っていないテーマも攻撃の対象になります。使わないものは削除してください。テーマは、使用中のものと、標準テーマを1つだけ残せば十分です。
更新が止まっているプラグインに注意してください。 一覧で「更新」が長く出ていないプラグインは、開発が終わっている可能性があります。プラグインの配布ページで最終更新日を確かめ、1年以上更新がなければ、別のプラグインへの乗り換えを制作会社に相談してください。
更新ができない(ボタンが出ない、エラーになる)ときは、PHP の版が古いことが多いです。「ツール」→「サイトヘルス」 で指摘を確認し、PHP の更新を先に行ってください。
ログイン画面の保護
対象になる検出事項:管理画面のログインページが誰でも開ける。
ログインページが見えていること自体は WordPress の標準の状態ですが、パスワードの総当たりを受け続けます。次の順に対策してください。
- パスワードを強くする。 「ユーザー」→「プロフィール」→ 「新しいパスワードを設定」 で、自動生成された長いパスワードに変え、パスワード管理ソフトに保存します。
- 「admin」というユーザー名を使わない。 使っている場合は、別の名前で管理者ユーザーを新しく作り、そのユーザーでログインし直してから、「admin」を削除します(削除のとき、投稿を新しいユーザーに引き継ぐ選択をします)。
- 使っていないユーザーを削除する。 退職した人や、制作時の仮アカウントが残っていないか、「ユーザー」→「ユーザー一覧」で確認します。
- サーバー会社の保護機能を有効にする。 多くのレンタルサーバーには、海外からの管理画面へのアクセスを止める設定や、ログインの失敗が続いたときに止める設定があります(サーバー会社別のガイド)。
- 2段階認証を追加する。 プラグインで、パスワードに加えてスマートフォンの確認コードを求めるようにできます。国内でよく使われている「SiteGuard WP Plugin」には、ログインページの URL の変更、画像認証、ログインの失敗が続いたときのロックなどもあります。導入は制作会社に依頼すると確実です。
XML-RPC の制限
対象になる検出事項:XML-RPC(xmlrpc.php)が外から使える。
XML-RPC は、外部のアプリから WordPress を操作するための古い仕組みです。パスワードの総当たりや、他サイトへの攻撃の踏み台に使われます。スマートフォンの WordPress アプリや Jetpack を使っていなければ、止めて問題ありません。
次のいずれかで止められます。
- サーバー会社の設定で止める(おすすめ)。 管理画面に「XML-RPC へのアクセス制限」といった項目があれば、有効にします。
- プラグインで止める。 「SiteGuard WP Plugin」の「XMLRPC 防御」で「XMLRPC 無効化」を選びます。
.htaccessで止める。 WordPress を置いているフォルダの.htaccessに、次を追加します(Apache の場合)。
<Files xmlrpc.php>
Require all denied
</Files>
止めたあと、WordPress アプリや外部の連携サービスを使っている場合は、それらが動くかを確認してください。
あわせて確認したいこと
- 設定ファイルのバックアップを公開フォルダに残さない。
wp-config.php.bakやwp-config.php~のようなファイルは、データベースのパスワードがそのまま読めてしまいます。見つかった場合は、公開されてはいけないファイルの手順で削除し、パスワードを変更してください。 - https で運用する。 「設定」→「一般」の「WordPress アドレス (URL)」と「サイトアドレス (URL)」が
https://で始まっているかを確認します。変更の前に、サーバー側で証明書が有効になっていることを確かめてください。 - バックアップから戻せることを確かめる。 バックアップは、戻せて初めて意味があります。年に一度は、戻す手順を制作会社と確認してください。
直したあとに
設定を変えたら、もう一度診断して、問題が消えたことを確かめてください。自社での対応が難しい場合は、お問い合わせからご相談ください。