左坊のメモ帳

WordPress など

*

ワードプレスにGoogleAuthentificatorで2段階認証を付ける

   

管理者だけでなく、全ユーザーが2段階認証を利用できる無料プラグイン

なおかつ、管理者以外のユーザーがフロントエンドで2段階認証の利用の有無を決められるプラグインです。

ちなみに、有料版(1サイト30ドル)を購入すれば、管理者が管理画面で全ユーザーに2段階認証の利用を強制できます。

スポンサーリンク

使用するプラグインは「Two Factor Authentication」

「ワードプレス 2段階認証」などのキーワードで検索すると「GoogleAuthenticator」がよくヒットするのですが、現時点でプラグインの更新が2年前で止まっているようでしたので、今回の調査対象から外しました。

また、新規プラグイン追加画面で「google authenticator」で探すと「Google Authenticator – Two Factor Authentication (2FA)」がトップで表示されますが、無料版だと管理者しか使えないようでしたので、こちらも除外。

無料で全ユーザーが2段階認証できて、かつ、フロントエンドから各ユーザーが自分で利用するかどうか決められるという点で、「Two Factor Authentication」をチョイスしました。

インストールは、公式プラグインなので、管理画面でインストール、有効にします。

ちなみに、管理者含むユーザー毎に、2段階認証を利用するかどうか設定できるのですが、プラグインを有効にした時点では全ユーザー「利用しない(Disabled)」となっています。

設定メニュー

管理画面の左メニュー>>Two Factor Auth

管理者自身のTFAの設定画面です。
ここで管理者自身が2段階認証を利用するかどうか等設定します。

管理画面の左メニュー>>設定>>Two Factor Authentication

TFAのグローバル設定です。

どのユーザーロールで2段階認証利用できるようにするか、設定できます。デフォルトは全ユーザーロールで「オン」です。

また、XMLRPC接続でも2段階認証要求できるようなので、オンにしておいて良いと思います。XMLRPC requests欄で、「Do require 2FA over XMLRPC」にチェックをしておきます。

フロントエンドで利用するかどうか設定するには

ショートコードを使います。

[twofactor_user_settings]

フロントエンドで2段階認証の利用を選択させたい場合は、固定ページを新規に作るか、既存のページに記述しておきましょう。

GoogleAuthenticationで2段階認証を使う方法

サイト管理者が使う場合

スマホにGoogleAuthenticationアプリをダウンロードしておく。

ワードプレス管理画面にログインして、Two Factor Authメニューを開きます。
表示されているQRコードをアプリで読み込みます。
Current one-time passwordの下に表示さているパスワードと、スマホアプリのコードが一致していることを確認します。
もし不一致の場合、「update」をクリックすると最新のパスワードに更新されるので、再度確認します。
「Activate two factor authentication」欄を「Enabled」にして、保存します。

正常にログインできるか確認するため、別のブラウザを起動して管理者でログインしてみます。

管理者以外のユーザーが使う場合

ショートコードを記述したページを開きます。
後は、管理者と同じです。

管理者がログインできなくなった場合

下記、3つのうち、どれか試してみてください。

  1. 2段階認証を設定していない管理者アカウントがある場合、それでログインしてプラグインを無効にしましょう。
  2. FTPでサーバーにログインしてwp-config.phpに以下の1行を追加します。
  3. define(‘TWO_FACTOR_DISABLE’, true);

  4. FTPでサーバーにログインして、プラグインディレクトリをリネイムします。
  5. プラグインを一時的に無効化する方法

管理者以外のユーザーがログインできなくなった場合

管理者が別ユーザーにスイッチできるプラグイン「User Switching」を使います。

  1. 公式プラグインなので、インストール、有効化します。
  2. 管理画面のユーザー一覧ページに、「切り替え」というリンクがあるので、それをクリックするとそのユーザーにスイッチできます。
  3. ショートコードを貼りつけたページにアクセスして、「Disabled」にします。
  4. 管理者に戻るには、サイトフッター部分にある「(管理者アカウント)に戻す」リンクをクリックします。

プラグインの日本語化

WordPress.orgに日本語ファイル(po、mo)があります。

moファイルをダウンロードして、ファイル名を「two-factor-authentication-ja.mo」とし、以下のディレクトリにアップすると日本語化されます。

wp-content/plugins/two-factor-authentication/languages/
wp-content/languages/plugins/

どちらか一方にアップロードすれば日本語化されます。

 - WordPress, プラグイン