Bitnami Redmine4.1で二要素認証を実装する方法

セキュリティをより強固にするために、プラグインを使ってBitnami Redmineのログインを二要素認証にしてみました。

ログイン時に事前に登録しておいたメールアドレスにワンタイムパスワードが送信されます。そのパスワードを使ってログインする方法です。

以下の記事がとても参考になりました。Bitnami Redmineへの導入のためにいくらか調整しています。

Redmineに2段階認証プラグインを導入する

 

前提条件

Microsoft Azureの仮想マシンを使って実装しました。環境は下記の通りです。

  • CentOS 7.7
  • Apatch 2.4.6
  • Bitnami Redmine 4.1.1-7
  • Redmine Out of Band Authentication plugin

 

 

Redmineからメール送信ができるように設定しておきます。以下の記事にまとめています。

Bitnami Redmine 4.1でGmailからメール送信する方法

 

 

プラグインのダウンロード

以下のリンクよりプラグインの情報を取得します。

redmine_out_of_band_auth

 

以下の画面が表示されます。赤で囲ったリンクをメモしておきます。

 

 

Redmineがインストールされている仮想マシンにTera Termなどのターミナルエミュレータを使ってログインします。

root権限でログインしましょう。以下の記事でまとめています。

【Azure VM】CentOSにrootユーザでログインする方法

 

 

gitがはいっていない場合は、以下のコマンドでインストールしておきます。

# yum install git

 

 

Bitnami Redmineの場合、プラグインのインストールは「/opt/[ここはインストール時に設定します]/apps/redmine/htdocs/plugins/」になります。ダウンロード元は先ほどメモしたURLです。

# cd /opt/redmine/apps/redmine/htdocs/plugins/ インストールファルダは異なる場合があるので確認が必要です。
# git clone https://github.com/matsukei/redmine_out_of_band_auth.git

 

 

インストール

Bitnami Redmineにプラグインをインストールしましょう。

まず、以下のスクリプトを実行します。

cd /opt/redmine
./use_redmine

 

パスを通します。

bash-4.2# echo $PATH

 

インストールを始めます。

bash-4.2# cd /opt/redmine/apps/redmine/htdocs/.bundle/
bash-4.2# chmod 755 config
bash-4.2# bundle install

 

このままデータベースを更新するとrailsのバージョンの関係でエラーになるようです。それを回避するために以下のファイルを修正します。

bash-4.2# vim /opt/redmine/apps/redmine/htdocs/plugins/redmine_out_of_band_auth/db/migrate/001_create_auth_source_out_of_bands.rb

 

以下の通り、編集します。

  • 編集前: class CreateAuthSourceOutOfBands < ActiveRecord::Migration
  • 編集後: class CreateAuthSourceOutOfBands < ActiveRecord::Migration[4.2]

 

 

最後にデータベースを更新してインストールを完了させます。

bash-4.2# bundle exec rake redmine:plugins:migrate NAME=redmine_out_of_band_auth RAILS_ENV=production

 

動作確認

Bitnami Remineを再起動します。以下の記事にまとめています。

【CentOS】Bitnami Redmineを起動/停止/再起動/自動起動する方法

 

 

Bitnami Redmineに管理者でログインし「管理」をクリックします。

 

 

次に、「プラグイン」を選択します。正しくインストールされている場合は、「Redmine Out of Band Authentication plugin」が表示されています。

 

 

次に、「管理」-「ユーザー」を選択します。

 

 

ユーザー一覧が表示されるので、二要素認証にしたいユーザーを選択しすると下図のような設定画面が表示されます。

「アウトオブバンド認証を有効にする」にチェックを入れ、最後に「保存」ボタンをクリックしましょう。

 

 

いったんログオフします。さきほど二要素認証の設定をしたユーザーでログインすると以下の画面が表示されます。

登録されているメールアドレスに確認コードが送信されます。その確認コードを入力して「送信」ボタンをクリックします。ログインできたらOKです。

 

 

最初は、システム管理者以外のユーザーで二要素認証の設定をしたほうが良いでしょう。システム管理者に二要素認証を設定して不具合がある場合、システム管理者でログインできなくなる可能性があります。

では、今回はここまでです。

>コアース株式会社

コアース株式会社

業務システム開発一筋32年

コアースは、オーダーメイドでシステム開発を行う大阪の会社です。 特に中小企業様のニーズにぴったりなシステムをご提案いたします。

CTR IMG