Wordfence Security設定後、WordPressにログインできない原因は?2FA(2段階認証)とreCAPTCHAの干渉

WordPress

この記事では私がWordfenceの設定をいじっていて突如WordPressにログインできなくなったときの原因と、その解決方法について説明します。


あなたの大事なブログを守るため、特にブログの収益化を目指す上では過剰なくらいのセキュリティにしておきたいものですよね。

そんな要望を叶えるべく、よく利用されているのが優秀なセキュリティ系プラグインであるWordfenceやreCAPTCHAなどのプラグインです。


しかしWordPressのプラグインというのはしばしば干渉してしまうことがあるため、適切なプラグインの選別や、設定の吟味ぎんみが不可欠なのです。


私は、今回のタイトルである2FA(2段階認証)とreCAPTCHAが干渉してWordPressにログインできなくなるという問題に直面して顔が青ざめるような事態となりました。

しかし海外フォーラム等を参考にして作業を進めた結果、無事原因と解決方法がわかりましたのでこの記事で共有します。

スポンサーリンク

Wordfence Securityの2FA(2段階認証)設定方法と起きた問題

Wordfenceとは、無料のままでも非常に多機能で優秀なWordPressのセキュリティ系プラグインです。


今回は、数ある機能の中でも問題となった2FA(2段階認証)設定方法の手順を追いながら、その問題について説明します。

reCAPTCHA関係のプラグインを導入している場合は、何も対策せずにこの後の手順を進めた場合、WordPressにログインできなくなる可能性が非常に高いです。

復旧するための手順も説明しますが、いったん最後まで記事を読んでいただくことをおすすめします。

Wordfenceでの2FA(2段階認証)設定方法

自サイトのWordPressにログイン後、画面左下の”Wordfence”にカーソルを合わせ、”Login Security”をクリックします。



“Enable 2FA for these roles”の項目で、2段階認証を有効化したい権限グループにチェックを入れて、”SAVE”ボタンをクリックします。

権限グループの種別

Administrator管理者
Editor編集者
Author投稿者
Contributor寄稿者
Subscriber購読者

となります。

“Allow remembering device for 30 days”のチェックボックスにチェックを入れた場合は、同じデバイスからログインする場合に限り、2段階認証が必要なタイミングが30日間ごとになります。

WordPressで作業をする際にログインするたび2段階認証するのが億劫な場合や、絶対に自分しか使用しないデバイスを使っている場合はチェックを入れても良いと思います。

多少面倒でもガチガチのセキュリティにしたい場合はチェックをはずしましょう。



WordPress管理画面の左側の”ユーザー”にカーソルを合わせ、”あなたのプロフィール”をクリックします。



下の画像のようなプロフィール設定画面が表示されますので、画面下の方にスクロールします。



Wordfence Login Security という項目があり、ここで2段階認証が現在有効なのか無効なのかが確認できます。有効化するために”Activate 2FA”ボタンをクリックします。

Activate 2FAボタンのうえに記載のある
“Inactive: Wordfence 2FA is inactive.”は、
”無効状態:Wordfenceの2段階認証は無効状態です”という意味です。



画面左側の”1. Scan Code or Enter Key”という項目内に、大きなQRコードが表示されますので、スマートフォンで2段階認証用の下記アプリ等を使ってQRコードを読み込みます。
Google Authenticator(Google 認証システム)
Authy 2-Factor Authentication


まだアプリをインストールしていない場合は、AndroidではGoogle Playで、iPhoneではApp Storeでアプリ名を検索してインストールしてください。

個人的には”Authy”が利便性が高くおすすめですが、英語が読める人向けです。

PCに戻り、Wordfenceの画面右側にある”DOWNLOAD”ボタンを必ずクリックして、リカバリーコードを絶対に忘れず、他人に見られない場所に保存しておきます。


スマートフォンの2段階認証アプリでQRコードを読み込んだら、アプリ内で数字が表示されますので、それをPCのWordfence画面右下の小さなフォームに入力して、”ACTIVATE”ボタンを押します。

リカバリーコードは万が一、2段階認証アプリを間違って削除してしまった場合や、スマートフォンを紛失してしまった場合に復旧することができる大事なデータです。

必ず大事に保存しておきましょう。

※ただし、今回起きた問題ではリカバリーコードですら何の役にも立ちませんでした😱


“ACTIVATE”ボタンを押すと、リカバリーコードをダウンロードしておくようて改めて忠告してくれます。

リカバリーコードのダウンロード忘れたままACTIVATEしてしまった場合は、このタイミングで必ずダウンロードしておきましょう。



ここまでで、Wordfenceでの2段階認証の設定自体は完了です。
ちゃんと2段階認証を使ってログインできるか、いったんログアウトして試してみましょう。



WordPressのいつのものログイン画面にアクセスします。



すると、2FA Codeというフォームが表示されるので、ここにスマートフォンの2段階認証アプリで表示される数字を入力します。ここが、新たに追加された2段階認証ログイン用のページです。

“Remember for 30 days”というチェックボックスにチェックを入れると、そのデバイスでログインする場合に必要になる2段階認証が30日ごとになります。

reCAPTCHA関係のプラグインを導入していない場合は、ここでめでたく管理画面にログインできて、検証終了になると思います。お疲れさまです!

2FA(2段階認証)設定後に起きた問題

しかし、
reCAPTCHA関係のプラグインを導入している場合は、次の恐ろしい画面が表示されるはずです。

この画面を見たときは血の気が引きました。


自分たちが運営しているのは、まだまだ駆け出しの弱小ブログですが、毎日コツコツと執筆やカスタマイズを重ねてきた大事なブログです。

それがこの一瞬でログインできなくなったのですから、めちゃくちゃ焦りました。


この後、自分のIDやパスワード、2段階認証アプリに表示された番号を100%間違いないことを確認してリトライしましたが、見事3回とも間違えと判定されてしまい自分のブログから締め出されログインできなくなってしまいました。

なんと、このときは先程用意していたリカバリーコードすら受け付けてもらえなかったのです。

スポンサーリンク

reCAPTCHA導入済み環境でWordfenceの2FA(2段階認証)設定後、WordPressにログインできなくなった場合の解決法方法

ここからがこの記事の本題です。

ここからの手順では、ご自身が契約しているサーバーのファイルを直接操作することになりますので絶対に関係のないファイルを編集したりしないようにしてください。

最悪の場合、自身のサイトが一切表示できなくなる可能性もあります。

不安な方は、事前にバックアップを取るなど自己責任で対策をしてください。

Wordfenceの2FA(2段階認証)を無効化してWordPressにログインする方法

reCAPTHA導入済み環境でWordfenceの2段階認証をこれまでの手順で進めてしまった場合は、恐らくこのままWordPressにログインすることはもう不可能ですので、直接サーバーのファイルを編集して対処します。


ColorfulBox(カラフルボックス)のサーバーを契約している場合は、ブラウザから自分の契約しているサーバーにログインし”cPanel”を開いたあと、”ファイルマネージャー”をクリックします。

※FileZillaのようなFTP系ソフトを普段から使用している場合は、それでもかまいません。



ファイルマネージャーを開いたあとは、下記のディレクトリを開きます。

public_html/自サイトのドメイン/wp-content/plugins

ファイルマネージャーの右画面に”wordfence”のフォルダがありますので、右クリックをして”Rename”をクリックします。


“wordfence”フォルダの名前を変更できる状態になりますので”xwordfence”等、元の名前とは別の名前に変更します。

このときフォルダを削除したり、適当な場所に移動したりするとまったく復旧できなくなる可能性があるのでフォルダ名の変更だけをするように注意してください。

“wordfence”フォルダの名前を変更した瞬間から、WordPressではWordfenceの機能を一切遂行できなくなります。

つまり、この時点で2段階認証が無効化されると同時に、Wordfence本来のセキュリティ機能もすべて無効化された状態となりますので、この操作をした後は迅速に次の手順に進んでください。


2段階認証が無効化された状態となっていますので、通常どおりWordPressにログインします。

これまでの手順を正しく踏んでいれば、ここで再びログインできるようになっているはずです。ひとまずは安心できましたね。


ログインが完了したら、再びサーバーのファイルマネージャーに戻り、変更したフォルダの名前を、元の名前に戻します。
(上記手順の例どおりであれば”xwordfence”から”wordfence”に戻します。)

フォルダ名が元に戻った瞬間から、Wordfence本来のセキュリティ機能が復活します。


WordPressの管理画面内でブラウザを更新すると、Wordfenceのメニューが再び表示されることが確認できます。

当然、2段階認証も再び復活していますので、このままWordPressからログアウトしてはいけません。次の手順に進んでください。

※2段階認証が恐ろしくなってしまった場合は、この状態からWordfenceの設定を変更して2段階認証を無効化し、reCAPTCHAを有効なままにするという選択肢もあります。

reCAPTCHAと2FA(2段階認証)を共存させる方法

色々調べてみた結果、どうやらreCAPTCHAと2FA(2段階認証)の両方がWordPressのログインページにある場合に、今回のような問題が起きてしまうようです。
(もしかしたらreCAPTCHA v3だけの問題で、v2は大丈夫かもしれません?)

Wordfenceのサポートフォーラムでも、現状はどちらかをオフにするしか解決策の回答が見当たりませんでした。


そんなわけで、ログインページのreCAPTCHAを無効化して2段階認証を有効化することで今回の問題を解決したいと思います。なぜ2段階認証の方を生かそうと思ったのかは後述します。

reCAPTCHAのプラグインは”Advanced no Captcha & Invisible captcha“がインストールされている環境を元に説明します。

※現在プラグイン名は「CAPTCHA 4WP」に変更されています。


WordPress管理画面左下の”設定”にカーソルを合わせ、”Advanced no Captcha & Invisible captcha”をクリックします。

※Wordfence自体にもreCAPTCHAの機能が搭載されていますが、今回の問題同様の理由で干渉すると思われるので使用はおすすめしません。

ちなみにWordPress系のブログサイトでは別のプラグインである”Invisible reCaptcha for WordPress”が推薦されていることが多いです。

しかし2021年10月現在では更新が2年間も放置されており、他プラグインとの干渉による不具合も発見したので個人的には使用を推奨しません。



設定画面に入ったら”Login Form”のチェックボックスをオフにして、画面下までスクロールしたら左下にある”変更を保存”ボタンを必ずクリックします。
※ここの保存は忘れやすいので注意してください。

その他の場所についてはチェックボックスオンのままでも問題ありません。

たったこれだけで、Wordfenceの2FA(2段階認証)が正常にログインページで動作するようになります。


設定箇所に不備がないことを確認したら、再びWordPressからログアウトして再度ログインしてみてください。

WordPressのログインページではreCAPTCHAと2FA(2段階認証)のどちらを優先すべきか

現状、WordPressのログインページではreCAPTCHAと2FA(2段階認証)は共存できないと考えられる以上、最善のセキュリティを得るためにはどちらか優秀な方を選択して残す必要があります。


YSYK個人の私見としてはWordPressのログインページにおいては、2FA(2段階認証)を残すべきだと考えています。

というのもreCAPTCHAは人間とボットを区別して排除してくれる優れた機能ですが、Wordfenceのセキュリティ機能ではブルートフォースアタック(総当たり攻撃)への対策も用意されており、ログイン試行回数の制限もあることから適当なIDやパスワードへの耐性はある程度確立されています。


であれば対策すべきは万が一、正式なIDやパスワードが何らかの問題により漏洩するなどした際の最後の砦としての2FA(2段階認証)だと考えました。

2段階認証を導入していれば、2段階認証に使用した現実のデバイスである自分のスマートフォンを紛失したり、盗難されたりしない限りは原則、ログインページから不正にログインするということはできないからです。

スポンサーリンク

おわりに

reCAPTCHAと2FA(2段階認証)の導入を薦める日本のブログサイトは多いですが、今回のような致命的な状況に陥った際の日本語の情報はほとんど見当たらなかったので、今回の記事が誰かの助けになれば嬉しいです。


こういう問題は海外フォーラムや英語での検索をすると、すんなり解決策が見つかったりするのでなおさら自分の英語力も鍛えていきたいなと思いました。

セキュリティはとても大事ですが、自分のブログが壊れてしまっては本末転倒ですので皆さん今一度落ち着いて作業することを心がけましょう。

コメント

  1. まる より:

    こちらの記事に救っていただきました!

    初心者ながら、やっとの思いで Invisible reCaptcha for WordPress と Authy を導入したところログインできなくなっていました。。

    (Google reCAPTCHAの登録ですら、新しい登録方法を見つけるのが大変で……。)

    どうしようかと途方にくれていましたが、ご説明のとおりに作業したところ、おかげさまで無事にログインできるようになりました。

    感謝です!
    ありがとうございました^^

  2. YSYK より:

    コメントありがとうございます!
    この記事がお役に立てたようで何よりです。

  3. reChaptcha v3とWordfence 2FAを共存させているのですが、今のところ問題は起きていません。”YSYK”さんのサイトに問題が起きたあと改善されたのか・・・
    それとも問い合わせフォームのプラグインによって差があるのか・・・(僕はSnow Monkey Forms)を使っています。
    問題が発生したタイミングは2FAインストール直後でしょうか?

    • YSYK より:

      この記事を作成したのが2020年のはじめなので明確な記憶はありませんが、新しい機能を導入するときは動作チェックを随時していたと思うので、私は2FAの設定直後にこの問題に直面しているはずです。

      Wordfenceの更新履歴をざっと見直してみても直接的に”reCAPTCHAと2FAの干渉問題を修正した”という記載は見当たらなかったので、reCAPTCHA側の仕組み自体が改善されたのかもしれません(未検証なので詳細は不明です)

      どちらの機能も有効化した状態でWordPress自体のログイン・ログアウトに問題がないのであれば、そのまま使っていても良さそうですね。

      関係あるかはわかりませんが、現状このサイトの問い合わせフォームはContact Form 7を使っています。

このサイトはreCAPTCHAで保護されており、Googleのプライバシーポリシー利用規約が適用されます。

タイトルとURLをコピーしました