はじめに
WordPressは、コーポレートサイトからブログまで、比較的容易に構築できるCMSです。
しかし、「簡単だから」と深く考えずに作ってしまうと、思わぬセキュリティリスクや運用上の問題に直面することがあります。
例えば、次のようなトラブルはよく発生します。
- 総当たり攻撃を頻繁に受ける。
- 管理・更新に手間がかかり、運用負荷が増える。
本記事では、こうした問題を回避するために、小規模なWordPressサイト構築・運用時に注意すべきポイントを整理します。
前提
- 1人月以内で構築可能な小規模Webサイトを対象としています。
- レンタルサーバを利用することを想定しています。
- 高セキュリティ要件の案件は対象外です。
注意すべきポイント
要件をシンプルに保つ
要件をシンプルにすることで、導入するプラグインやPHPでのカスタマイズを最小限にできます。
要件を盛り込みすぎると、プラグイン数やカスタマイズ量が増え、結果として運用負荷やセキュリティリスクが上昇します。
プラグインの厳選
プラグインは便利ですが、脆弱性の原因となりやすく、アップデートに伴う不具合発生リスクもあります。
導入は「便利だから」ではなく「必要だから」に限定しましょう。
また、可能であればサポートが継続されている有名プラグインを選びます。
TIPS:プラグインなしでバックアップする方法
さくらのレンタルサーバのように、レンタルサーバ側がバックアップ機能を提供しているサービスを利用すると便利です。
これにより、セキュリティリスクを減らし、復元作業も簡単になります。
不要なテーマの削除
使用していないテーマは削除しましょう。
ただし、デフォルトテーマをすべて削除すると、サイトヘルスで「デフォルトテーマを利用可能にしましょう」と警告が表示されます。
警告に従うのであれば、デフォルトテーマは必ず1つ残す方が良いと思われます。
予測されにくい管理者ユーザー名を使う
「admin」、「root」など一般的なユーザーIDは、攻撃対象になりやすいです。
具体的な名称は避け、ランダムな文字列をおすすめします。
パスワードマネージャ1を利用すれば、ユーザーIDがランダムな文字列でも問題は少ないと思われます。
WordPressはユーザーIDが比較的容易に知られてしまうため、効果は限定的ですが、「気休め」にはなります。
強固なパスワード
複雑なパスワードを設定しましょう。
パスワードマネージャ1を利用すれば、複雑なパスワードの生成・管理も容易です。
定期的なアップデート
WordPress本体やプラグインは定期的に更新し、最新状態を維持します。
TIPS:安全にアップデートするためのポイント
- メジャーアップデートは自動ではなく手動で実行する。
- 更新前に必ずバックアップを取得する。
- プラグイン更新後は動作確認を行います。
セキュリティ対策プラグインの導入
WordPressのセキュリティ対策は、手動だけでは漏れや作業負荷が大きいため、専用プラグインの利用を推奨します。
おすすめプラグイン
- SiteGuard WP Plugin:
手間をかけずに基本的な対策が可能です。
日次バックアップ
バックアップは、毎日取ることをおすすめします。
操作ミス、WordPressやプラグインのアップデートなどでサイトが正常に表示されなくなった場合でも、バックアップから復元することで迅速な復旧が可能です。
TIPS : バックアップ世代数
バックアップの保持世代は運用方針によって異なりますが、8世代程度が現実的です。
「TIPS:プラグインなしでバックアップする方法」で紹介している方法では、最大8世代まで保存可能です。
したがって、8世代を上限にすることで運用負荷を抑えつつ、十分な履歴を確保できます。
ただし、コーポレートサイトの場合は、長期休暇前には、必ず最新のバックアップをダウンロードしておきましょう。
TIPS:より確実にバックアップしたい場合
レンタルサーバのバックアップ機能は便利ですが、100%確実とは言えません。
万一に備えてバックアップデータを毎日ダウンロードしておきましょう。
WAFの導入
WAFは導入することをおすすめします。
WAFを導入することで、不正アクセスへの対策がより強固になります。
ただし、WAFを導入後は、動作確認をしてください。
WordPressの一部機能やプラグインが正常に動作しなくなる可能性があるためです。
TIPS : レンタルサーバ側のWAF
レンタルサーバによっては、WAFを提供しているところがあります。
そのようなレンタルサーバを利用することで、WAFを導入できます。
例えば、さくらのレンタルサーバはWAFを提供しています。
ただし、自分でWAFを設定する必要があります。
まとめ
- 要件はできるだけシンプルにします。
- プラグインは必要最低限にします。
- WordPress本体・プラグインを定期的にアップデートします。
- 不要テーマを削除します。
- 強固なパスワード・予測されにくいユーザーIDの利用します。
- レンタルサーバのバックアップ機能を活用し、バックアップを毎日取得します。
- WAFを導入します。
上記の工夫により、セキュリティリスクと運用負荷の双方を軽減できます。
参考文献