導入メモ。
環境
- FreeBSD 14.1
- Roundcube 1.6.7
インストール
twofactor_gauthenticatorインストール
二段階認証プラグインはいくつかあるけれども、一番使われているalexandregz/twofactor_gauthenticatorを入れることにした。
git
でコードをplugins
ディレクトリにインストールする。
# cd /usr/local/www/roundcube/plugins
# sudo -u www git clone https://github.com/alexandregz/twofactor_gauthenticator.git
twofactor_gauthenticator設定
config.inc.php.dist
をコピーして使用する。
# /usr/local/www/roundcube/plugins/twofactor_gauthenticator
# sudo -u www cp config.inc.php.dist config.inc.php
config.inc.php
をエディタで開いて編集する。
二段階認証を全員に強制したい場合には、$rcmail_config['force_enrollment_users']
にtrueを設定する。デフォルトではfalse。
特定のホストやネットワークからのログイン時に二段階認証を無効にしたい場合、$rcmail_config['whitelist']
の配列にそのアドレスを指定する。特に例外を設けない場合には、設定行を削除する。
二段階認証の入力フィールドを、パスワード欄のように入力内容をマスクしたい場合には、$rcmail_config['twofactor_formfield_as_password']
にtrueを設定する。デフォルトではfalse。
二段階認証を特定のユーザに限定して利用許可したい場合には、$rcmail_config['users_allowed_2FA']
の配列にそのユーザ名を指定する。全員に利用許可したい場合には、この設定行を削除する。
ログイン失敗時にログを残したい場合、$rcmail_config['enable_fail_logs']
をtrueにする。デフォルトではfalse。
$rcmail_config['force_enrollment_users'] = false;
$rcmail_config['allow_save_device_30days'] = true;
$rcmail_config['twofactor_formfield_as_password'] = false;
$rcmail_config['enable_fail_logs'] = true;
二段階認証設定
ワンタイムパスワードの生成と入力に1Passwordを使用する場合。
Roundcube設定
プラグインのインストールが完了すると、ユーザの設定画面に「Google二段階認証」の項目が表示されるようになる。
二段階認証を有効にするには、次の設定を行う。
二段階認証を一時的に無効にしたい場合には、設定画面上部にある「有効」のチェックをはずして「保存」ボタンをクリックする。
1Passwowrd設定
二段階認証用のワンタイムパスワードを使用するには、1Passwordで次のように設定する。
これで、ブラウザ上に1Passwordがワンタイムパスワードを自動入力して、二段階認証を使ったログインができるようになる。