WordPressはオープンソースで、誰でも無料で使用することができます。プラグイン・テーマも利用できるので、世界中で最も利用されているCMSです。
ただ、オープンソースであるため、脆弱性が発見されやすくセキュリティの対策は必須となります。
そこで誰でも簡単に設定できるように、プログラミングは無しの、プラグインのみでセキュリティ設定を紹介します。
WordPress、プラグインのバージョンを最新に保つ
WordPressは常に最新にしておくことをお勧めします。
オープンソースで誰でも利用ができるため、世界中で悪意を持つ人からの攻撃を受けやすく、また脆弱性も発見されやすいです。
脆弱性が発見されると、都度バージョンアップがくるので最新に保つことで情報漏洩などを防いでいきます。
ただし、有料テーマを使っていたり、プラグインの機能に依存した箇所があると、バージョンアップにより動かなくなることもあるので、事前にバックアップをとっておきましょう。
パスワードを強固に
パスワードは「12文字以上の英数字ランダム文字列」で設定します。
パスワードは辞書攻撃などがあるため、「文字数を長くする」「単純な数字や単語を使わない」とするだけでセキュリテイの効果が見込めます。
ユーザー名の漏洩防止 [Edit Author Slug]
WordPressは初期状態だと、/?author=1 をURLにつけるとユーザーIDが表示されます。
また、/wp-json/wp/v2/users をつけても、ユーザーIDが表示されてしまいます。
ユーザーIDが判明すると、あとはパスワードを総当りするだけなので、管理画面へ不正アクセスされる可能性が高まります。
そこで、「Edit Author Slug」をインストールします。
Edit Author Slugを入れて、設定をすることで画面に表示されるユーザーIDを変更することが可能です。
インストール手順はこちらを参照してください。
ログイン施行回数などを制御しセキュリティを強固に [SiteGuard WP Plugin]
SiteGuard WP Pluginはインストール、有効化するだけでセキュリティが強化されます。
特に画像認証によるBot対策、XMLRPC防御、ログインロックによるログイン施行回数の制御などでブルートフォース攻撃や、リスト攻撃なども含めた多岐にわたる防御を設定してくれます。
インストール手順はこちらを参照してください。
ログイン履歴の管理 [WP Activity Log]
アカウントごとの操作履歴を管理できるようになります。
不正にログインされた際のログ取得や、多人数による操作変更ログなどを取得できるので、インシデントが発生した際に追えるようになります。
管理画面のURLを変更 [WPS Hide Login]
WordPressの管理画面は /wp-admin になっています。誰でも知ることができるURLのため、別URLへ変更することが望ましいです。
WPS Hide Login をインストール、有効化して、管理画面のURLを変更するだけでかなりのセキュリティ効果が見込めます。
インストールはこちらを参照してください。
バックアップを取得 [All-in-One WP Migration]
日々更新されるサイトはバックアップは必須です。定期的にバックアップを取り、インシデントが発生した時にいつでも元に戻せるようにしておきましょう。
バックアップをとりつつ、復元もすることができるプラグインは「All-in-One WP Migration」が使い勝手が良いです。
記事などのデータベースはもちろん、メディアといった画像ファイル、テーマ、プラグインも含めてバックアップ・復元をすることができます。
また、サイト自体を引越しする際にも利用するので、ぜひ入れておいてください。
インストールはこちらを参照してください。
さいごに
WordPressはプラグインを使うだけで簡単にセキュリティ対策ができます。
どのサイトでも言えることですが、これをすれば大丈夫、ということはなく、テクノロジーの進化とともに対策を講じていく必要があります。
余談ですが、もし「WordPressってセキュリティ脆弱なんでしょ?」と言われたら「しっかりと対策したら大丈夫です。アメリカのホワイトハウスもWordPressなんですよ」とドヤ顔で言ってみてあげてくください。