マルチサイト対応の無料プラグイン
先に紹介したInvisible reCaptcha導入で、マルチサイトのボット対策はできましたが、WordPressのログインURLの変更といった根本的な対策まではできません。シングルサイトの場合はSiteGuardという優れた無料のセキュリティプラグインがありますが、残念ながらマルチサイトには対応していないので対象外となります。
マルチサイト対応の無料セキュリティプラグインとしては、All in One WP Securityが挙げられます。ただこちらはInvisible reCaptchaの時と違って、ネットワーク内の各サイトで個別に設定が必要になります。抱えているサイト数が多い場合はちょっと手間かも知れませんが、それでも導入して損はないです。
各サイトの設定の手間が最小限で済むように、2-3の設定に絞って紹介します。
All in One WP Securityの有効化
マルチサイトの「サイトネットワーク管理>プラグイン」で All in One WP Securityをインストールし、「サイトネットワークで有効化」します。すると、All in One WP Securityがサイトネットワークに属する各サイト側で個別に有効化されます。
「参加サイト>任意のサイト>ダッシュボード」で各サイトの管理画面に行くと、左メニューに「WP セキュリティ」という項目が増えているのが分かります。以下の画面は親サイトのWPセキュリティのダッシュボードです。
設定1:ファイアーウォール設定(親サイト)
ひとつめはファイアーウォール設定で、これはマルチサイトの親サイト側でのみ設定可能です。.htaccessに特別なコードを挿入することでサイトネットワーク全体を保護する機能をONにします。
①親サイトの管理画面で「WP セキュリティ>ファイアーウォール」を開きます。(子サイトにはこのメニューは表示されません)
②「基本的なファイアウォール保護を有効化」をチェックしてください。とりあえずそれ以外は設定不要です。
③画面下までいき「基本ファイアーウォール設定を保存」します。
設定2:ログインページURLを変更(各サイト毎)
次はWordPressのログインURLの変更です。これはネットワークに属するサイト毎に個別に設定する必要があります。(今回は親サイトの例ですが、子サイトすべてに同様の設定を行ってください)
①「WP セキュリティ>総当たり攻撃」を開くと、デフォルトで「ログインページの名称を変更」タブが開きます。
②「ログインページの名前変更機能を有効化」をチェックし、その下のログインURLに任意の文字列をセット。
③「設定を保存」すると、wp-login/、wp-admin/へのアクセスができなくなります。
この設定を行ったら、必ず新しいログインURLをメモ(またはブックマーク)しておくこと!全サイト分について控えることをおすすめします。
※SiteGuardとの違い:SiteGuardでのログイン画面変更はIP識別なので、自宅のWifi使ってればどのブラウザ(デバイス)からでもwp-admin/でアクセス可能でした。しかしAll in One WP Securityのログイン画面変更はブラウザ単位でセッションの有無が識別されるため、例えばChromeでセッションがあればwp-admin/でアクセスできますが、FireFoxで未ログインなら弾かれます。
設定3:ログイン画面にCaptchaを設置(親サイト)
これはログイン画面に簡単な「問題」を表示してボットを防ぐ機能です。Invisible reCaptchaが導入済みであれば無理に設定する必要はないですが、ログインの敷居を高くしておくに越したことはありません。これも親サイトでのみ設定できる項目になります。
①親サイトの管理画面で「WP セキュリティ>総当たり攻撃>ログインCaptcha」を開いて、以下の3つ全部をチェックします。(てっぺんにGoogle reCaptcha設定もありますが、これはv2用なので飛ばします。やるならInvisible reCaptchaの記事で解説したとおり、v3を導入したほうが良いです。)
・ログインページで CAPTCHA を有効化 ☑
・パスワード再設定フォームで CAPTCHA を有効化 ☑
・カスタムログインフォームで CAPTCHA を有効化 ☑
②「設定を保存」すると、ログイン画面に「19+3=」みたいな計算問題が出現し、ボットが不正ログインできなくなります。
実際のログイン画面はこのような状態になり、簡単な計算問題が表示されます。(ログインが少し手間ではありますが、reCaptcha v3と共存させることができるところはSiteGuardのひらがな認証と似ています。)
All in One WP Securityの注意点
以上、マルチサイトでやっておきたいベーシックな設定を3つ紹介しました。
実際には、All in One WP Securityはもっと高度なセキュリティ設定ができるのですが、自分が施した設定のメリット/デメリットを把握しているのでなければ無闇に設定しないほうが安全です。
例えばネット情報で「ログイン画面のIP制限はやっておいたほうがいい」というアドバイスがあります。固定IPを使っている環境(企業など)では確かにその通りかも知れません。しかし、ほとんどの個人宅のプロバイダ回線は動的IPを使ってます。動的IPに対してIP制限をかけると一見うまく動作するでしょうが、忘れたころに停電などでモデムが再起動になった瞬間にIPが変更になってWordPressにログイン出来なくなります。そういったリスクを想像できないうちは、あまり高度な設定に手を出さないほうが良いと思います。
とりあえず、ここに紹介した対策をやっておくだけでも、丸腰のマルチサイトよりはだいぶ安全になりますので、試してみてください。
にほんブログ村「Webサイト構築」ランキング参加中です。ポチッと応援お願いします♪
コメント