WordPressセキュリティ対策完全ガイド|ハッキングを防ぐ10の設定
WordPressは世界中のウェブサイトの43%以上で使われているCMSです。しかし人気があるがゆえに、毎日数万件以上のサイバー攻撃が世界中のWordPressサイトに向けて行われています。「自分のサイトは小さいから大丈夫」という考えは非常に危険です。本記事では、初心者でもすぐに実践できる10の対策を体系的に解説します。
なぜWordPressはハッキングされやすいのか
WordPressが攻撃ターゲットになりやすい理由は主に3つあります。
1. シェアが高すぎる
攻撃者は自動化ツールを使ってWordPressサイトを大量にスキャンします。シェアが高いほど狙われやすくなります。
2. プラグインの脆弱性
WordPressのプラグインは誰でも開発・公開できるため、セキュリティホールを持つプラグインが存在します。古いバージョンを使い続けることが最大のリスクです。
3. デフォルト設定のまま使っている
管理画面URLがデフォルトの/wp-adminのままだったり、管理者ユーザー名がadminだったりすると、ブルートフォース攻撃の的になります。
対策1: Wordfenceを導入する
Wordfenceは世界で最も使われているWordPressセキュリティプラグインです。無料版でも十分な機能を備えています。
主な機能:
- ◆ファイアウォール(WAF)による不審なリクエストのブロック
- ◆マルウェアスキャン
- ◆ブルートフォース攻撃への対策
- ◆リアルタイムの攻撃トラフィック監視
インストール後は「Wordfence」→「Firewall」から「最適化」ボタンをクリックし、.htaccessまたはauto_prepend_fileモードを有効にしましょう。これにより、WordPressのコアが読み込まれる前にファイアウォールが機能します。
対策2: 二段階認証(2FA)を設定する
パスワードが漏洩しても、二段階認証があれば不正ログインを防げます。Wordfenceにも2FA機能が含まれていますが、「WP 2FA」プラグインも使いやすくておすすめです。
設定手順:
1. プラグイン「WP 2FA」をインストール・有効化
2. セットアップウィザードに従いGoogle Authenticatorと連携
3. 管理者・編集者ロールに2FAを必須設定
対策3: ログインURLを変更する
デフォルトの/wp-adminや/wp-login.phpは攻撃者が最初に試すURLです。「WPS Hide Login」プラグインを使えば、ログインURLを任意のパスに変更できます。
変更例: https://example.com/secret-door
ただし変更後のURLは必ずメモしておきましょう。忘れるとサイトにアクセスできなくなります。
対策4: ログイン試行回数を制限する
ブルートフォース攻撃(パスワードの総当たり攻撃)を防ぐために、ログイン失敗回数を制限します。Wordfenceのブルートフォース保護機能を使うか、「Limit Login Attempts Reloaded」プラグインを導入します。
推奨設定:
- ◆5回失敗でIPアドレスを20分ロック
- ◆4回ロックアウトで24時間ロック
対策5: 管理者ユーザー名を「admin」以外にする
インストール時にadminというユーザー名を作成した場合は、必ず変更してください。WordPressのダッシュボードからは直接変更できないため、以下の手順を使います。
- ◆新しい管理者アカウントを作成する(別のユーザー名で)
- ◆新アカウントでログインし直す
- ◆旧
adminアカウントを削除する(投稿の帰属先は新アカウントに変更)
対策6: WordPress・プラグイン・テーマを常に最新版に保つ
脆弱性の大半は古いバージョンを使い続けることで発生します。「設定」→「更新」から自動更新を有効にするか、少なくとも週に1回は手動でチェックする習慣をつけましょう。
自動更新の設定(wp-config.phpに追記):
define('WP_AUTO_UPDATE_CORE', true);
対策7: SSL証明書(HTTPS)を必ず設定する
通信を暗号化するHTTPS化は今やセキュリティの基本です。多くのレンタルサーバーでは無料のLet's Encrypt証明書が利用できます。管理画面のログイン情報を平文で送信しないためにも必須の設定です。
対策8: データベースのテーブル接頭辞を変更する
デフォルトのテーブル接頭辞wp_はSQLインジェクション攻撃で利用されることがあります。インストール時にwp_以外の文字列(例: xk7a_)に変更しておくと安全性が上がります。
既存サイトで変更する場合は「Change Table Prefix」プラグインを使いましょう。必ずバックアップを取ってから実行してください。
対策9: 自動バックアップを設定する
万が一の侵害に備え、定期的なバックアップは必須です。「UpdraftPlus」プラグインがおすすめです。
推奨設定:
- ◆バックアップ頻度: 日次(データベース)、週次(ファイル)
- ◆保存先: Google Drive、Dropbox、Amazon S3などのクラウドストレージ
- ◆保持世代数: 最低7日分
対策10: xmlrpc.phpを無効化する
xmlrpc.phpはWordPressの古いリモートアクセス機能です。現在ほとんどのサイトで不要ですが、DDoS攻撃やブルートフォース攻撃に悪用されることがあります。
無効化方法(.htaccessに追記):
<Files xmlrpc.php>
Order Deny,Allow
Deny from all
</Files>
まとめ: セキュリティは継続的な取り組み
WordPressのセキュリティ対策は一度やれば終わりではなく、継続的なメンテナンスが必要です。特に重要な3点を再確認しましょう。
| 優先度 | 対策 | 難易度 |
|---|---|---|
| 最高 | Wordfence導入 + 更新管理 | 低 |
| 高 | 2FA + ログインURL変更 | 低 |
| 高 | 自動バックアップ設定 | 低 |
今日から始められる対策ばかりです。まずはWordfenceのインストールと自動バックアップの設定から着手してみてください。セキュリティへの投資は、サイト資産を守る最良の保険です。
この記事に関連するコース
WordPress HP制作完全講座
WordPressを使ったホームページ制作を、サーバー契約からSEO対策、セキュリティ、公開まで完全網羅する講座です。企画・設計から始まり、テーマカスタマイズ、ブロックエディタ、プラグイン活用、アクセス解析導入まで、実務で必要なすべてのスキルを12のレッスンで段階的に習得します。