WordPressは世界中で広く利用されているCMSであるため、常にサイバー攻撃の標的となりやすいです。しかし、適切な対策を講じることで、サイトの安全性を大幅に向上させることができます。このガイドでは、基本的な対策から少し専門的な設定まで、具体的な手順を交えて解説します。
1. 基本的な対策:まずはここから始めよう
基本的ながら非常に重要な項目です。これらの対策を怠ると、サイトは簡単に危険に晒されます。
項目1:強力なパスワードと推測されにくいユーザー名
- なぜ重要か?:単純なユーザー名とパスワードの組み合わせは、ブルートフォース攻撃(総当たり攻撃)によって数分で破られる可能性があります。
- 具体的な方法:
- ユーザー名:インストール時に設定するユーザー名をadminやサイト名など、推測されやすいものにするのは避けましょう。もしadmi
nを使ってしまっている場合は、新しい管理者ユーザーを作成し、古いadminユーザーを削除します。 - パスワード:
- 12文字以上で、大文字、小文字、数字、記号(!@#$%^&*など)をすべて含める。
- パスワード管理ツール(例: 1Password, Bitwarden)を利用して、ランダムで強力なパスワードを生成・管理するのが最も安全です。
項目2:ログイン試行回数の制限
- なぜ重要か?:ブルートフォース攻撃は、プログラムが自動で何千回もログインを試行します。試行回数を制限することで、この攻撃を事実上無効化できます。
- 具体的な方法:
- プラグイン Limit Login Attempts Reloaded をインストールします。
- 設定画面で、以下のように設定するのが一般的です。
- ロックアウト:4回試行に失敗したら
- ロックアウト時間:20分間
- これにより、攻撃者は4回連続で失敗すると20分間アクセスできなくなり、攻撃効率が劇的に低下します。
項目3:二要素認証(2FA)の導入
- なぜ重要か?:万が一パスワードが漏洩しても、スマートフォンなどの本人しか持っていないデバイスでの確認がなければログインできなくなり、セキュリティが飛躍的に向上します。
- 具体的な方法:
- Wordfence Security や Google Authenticator などのプラグインを導入します。
- プラグインの設定に従い、スマートフォンにGoogle AuthenticatorやAuthyなどの認証アプリをインストールします。
- 画面に表示されるQRコードを認証アプリでスキャンすると設定が完了。以降のログインでは、パスワードに加えてアプリに表示される6桁のコードが必要になります。
項目4:WordPress本体、テーマ、プラグインの常時アップデート
- なぜ重要か?:WordPressのアップデートには、機能追加だけでなく、発見された脆弱性の修正(セキュリティパッチ)が含まれます。古いバージョンを使い続けることは、既知の攻撃方法に対して無防備であることを意味します。
- 具体的な方法:
- WordPressのダッシュボードにログインし、「更新」メニューに通知が来ていないか定期的に確認します。
- 通知があれば、バックアップを取得した上で、速やかにアップデートを実行してください。
- 自動更新:ダッシュボードの「更新」画面から、本体、プラグイン、テーマの自動更新を有効にできます。これにより、重要なセキュリティアップデートを見逃すリスクを減らせます。
2. テーマとプラグインの管理:脆弱性の温床にしない
不正アクセスの原因の多くは、管理が不十分なテーマやプラグインに潜む脆弱性です。
項目5:信頼できるソースからのみ入手する
- なぜ重要か?:非公式なサイトで配布されているテーマやプラグインには、マルウェアやバックドア(裏口)が仕込まれている危険性があります。
- 具体的な方法:
- 公式ディレクトリ:テーマやプラグインは、WordPressの公式ディレクトリから入手するのが最も安全です。
- 信頼できる開発元:有料の製品は、その分野で実績と評価のある開発元(例: Elementor, Astra, GeneratePressなど)から直接購入しましょう。
項目6:不要なテーマやプラグインは完全に削除する
- なぜ重要か?:「無効化」しているだけでは、ファイルはサーバー上に残っています。そのプラグインに脆弱性があれば、攻撃の足がかりになる可能性があります。
- 具体的な方法:
- ダッシュボードの「プラグイン」→「インストール済みプラグイン」に移動します。
- 使っていないプラグインを「無効化」し、その後「削除」します。
- テーマも同様に、「外観」→「テーマ」から、現在有効なテーマ以外は削除しましょう。(デフォルトテーマを1つ残しておくと、トラブルシューティング時に役立ちます)
項目7:総合セキュリティプラグインの導入
- なぜ重要か?:ファイアウォール、マルウェアスキャン、不正ログイン検知など、多層的な防御を一つのプラグインで実現できます。
- 具体的な方法:
- Wordfence Security や All In One WP Security & Firewall が人気です。
- Web Application Firewall (WAF):外部からの攻撃をWordPressに到達する前にブロックします。
- マルウェアスキャン:サイト内のファイルをスキャンし、不審なコードや改ざんを検知します。
3. サーバー・ファイル設定:見えない部分を固める
より技術的な設定ですが、一度設定すれば継続的にサイトを保護してくれます。
項目8:SSL/TLSを導入し、サイトをHTTPS化する
- なぜ重要か?:HTTPS化(通信の暗号化)されていないと、ログイン情報や個人情報が第三者に盗聴される危険があります。また、Googleの検索順位やブラウザの警告表示にも影響します。
- 具体的な方法:
- サーバー側での設定:利用しているレンタルサーバーの管理画面から、無料のSSL証明書(Let’s Encryptなど)を有効にします。
- WordPress側での設定:ダッシュボードの「設定」→「一般」で、「WordPressアドレス (URL)」と「サイトアドレス (URL)」をhttp://からhttps://に変更します。
- 混合コンテンツの修正:httpsのページ内にhttpの画像などが残っていると警告が出ます。
Really Simple SSL などのプラグインで簡単に修正できます。
項目9:ファイルパーミッション(権限)を適切に設定する
- なぜ重要か?:サーバー上のファイルやフォルダに誰がアクセスし、何ができるか(読み取り、書き込み、実行)を制限します。不必要に緩い権限は、攻撃者によるファイルの改ざんを容易にします。
- 具体的な方法:
- FTPクライアント(FileZillaなど)やサーバーのファイルマネージャで設定します。
- 推奨される権限:
- フォルダ(ディレクトリ):755
- ファイル:644
- wp-config.php:600 (特に重要なファイルなので、所有者以外は読み書き不可にする)
項目10:wp-config.phpへのアクセスを拒否する
- なぜ重要か?:
wp-config.phpにはデータベースの接続情報など、最も重要な機密情報が含まれています。このファイルに外部から直接アクセスされるのを防ぐべきです。 - 具体的な方法:
- WordPressのルートディレクトリにある
.htaccessファイルに、以下のコードを追記します。
<files wp-config.php>
order allow,deny
deny from all
</files>項目11:ダッシュボードからのファイル編集を無効化する
- なぜ重要か?:万が一管理者アカウントが乗っ取られた場合、攻撃者がダッシュボードから直接テーマやプラグインのPHPコードを編集し、悪意のあるコードを埋め込むのを防ぎます。
- 具体的な方法:
wp-config.phpファイルに、以下の1行を追記します。
define('DISALLOW_FILE_EDIT', true);4. 運用・保守:継続こそが力
セキュリティ対策は一度やったら終わりではありません。継続的な運用がサイトを守る鍵です。
項目12:定期的なバックアップ
- なぜ重要か?:どんなに強固な対策をしても、100%安全とは言えません。ハッキング、サーバー障害、操作ミスなどでサイトに問題が発生した際、バックアップがあれば迅速に正常な状態へ復元できます。
- 具体的な方法:
- プラグインを利用:UpdraftPlus が非常に人気で高機能です。スケジュール(毎日、毎週など)を設定し、Google DriveやDropboxなどの外部ストレージに自動でバックアップを保存できます。
- ホスティングサービスの機能:多くのレンタルサーバーは、自動バックアップ機能を提供しています。
項目13:WAF (Web Application Firewall) の利用
- なぜ重要か?:一般的なファイアウォールより一歩進んで、アプリケーション(WordPress)への攻撃を検知・ブロックします。SQLインジェクションやクロスサイトスクリプティングといった典型的な攻撃に有効です。
- 具体的な方法:
- ホスティングサービス提供のWAF:多くのレンタルサーバーがオプション機能として提供しています。手軽で効果が高いです。
- クラウド型WAF:Cloudflare などのサービスを利用します。サイトのパフォーマンス向上やCDN機能も兼ね備えていることが多いです。
これらの対策を一つずつ着実に実行することで、あなたのWordPressサイトは格段に安全になります。




