LoginSignup
13
6

More than 5 years have passed since last update.

Nextcloud で 2FA を有効にしてセキュリティを向上させる

Last updated at Posted at 2018-07-10

TL;DR

何となく自分で運用している Nextcloud に 2FA を設定してみようと思った。思い立ったからやってみただけで、導入の動機としては正直セキュリティ向上は二の次。
でも Nextcloud をインターネットからアクセスできるようにしているのであれば、 2FA はパスワードクラックに対する強い対策になるので、セキュリティの観点からみると有効にしておいた方が良いでしょう。

環境とか

前提条件

  • Nextcloud の管理権限を持っている事。

利用バージョン

  • Nextcloud 13.0.4

Nextcloud で 2FA アプリを導入

まずは Administrator 権限を用いて、 Nextcloud で 2FA を使えるように設定します。

Nextcloud で 2FA を設定できるよう設定

Nextcloud で 2FA が有効になっていない場合は、 Administrator 権限で 2FA を行うためのアプリを有効化する必要があります。

画面右上のユーザーアイコンをクリックし、出てきたメニューから アプリ を選択します。

ホーム画面.png

画面左側のメニューから セキュリティ をクリックし、右側に表示されたプラグインの一覧から Two Factor TOTP Provider を見つけ、 有効にする ボタンをクリックします。少し待つと自動的に Two Factor TOTP Provider がインストールされ、有効になります(ボタンの表示が 無効にする に変化します)。

セキュリティのアプリ一覧.png

これだけで Nextcloud での 2FA 有効化は完了です。かんたん。

ユーザーごとに 2FA を有効化

Administrator 権限を用いて、 Nextcloud で 2FA を使えるようにしたら、今度は各ユーザーごとに 2FA を利用するための設定を行います。

ちなみに公式のドキュメントは Using two-factor authentication — Nextcloud 13 User Manual 13 documentation を参照してください。バージョン 11 と 12 でも同様のドキュメントがあるので多分似た様な手順でできると思います。

ユーザーの 2FA を有効化

Nextcloud での 2FA 有効化ができたら、ユーザー単位で 2FA を有効化します。

画面右上のユーザーアイコンをクリックし、出てきたメニューから 設定 を選択します。

ホーム画面.png

画面左側のメニューから セキュリティ をクリックすると次の画面になります。

Personal のセキュリティ画面-01.png

第二要素バックアップコードTOTP 第2認証 と記載されているのが先ほど有効化した Two Factor TOTP Provider アプリによる 2FA の項目です。 TOTP有効化 にチェックを入れると次のように QR コードが表示されます。

Personal のセキュリティ画面-02.png
表示された QR コードを、スマホの「Google Authenticator」アプリ等で登録します。登録したアプリがワンタイムパスワードを出力するようになるので、アプリが出力した6桁の数字を 認証コード と表示されているテキストエリアに入力し、 検証 ボタンをクリックしてください。
※ 一応、スクリーンショットの QR コードにはモザイクをかけておきましたが、言うまでもなくこのキーは無効化してあります。

次の画面のように、 TOTP有効化 にチェックが入れば設定したユーザーで 2FA を利用するための準備は完了です。

Personal のセキュリティ画面-03.png

2FA を利用したログインを試す

実際に 2FA を用いてログインをしてみます。

まずは Nextcloud からログアウトします。次のような Nextcloud のログイン画面が表示されたら、従来通り ユーザ名かメールアドレスパスワード を入力します。この時点ではまだワンタイムパスワードは利用しません。

ログイン画面.png

入力したログイン情報が正しければ、通常はファイルやディレクトリの一覧が表示されますが、2FA を有効にしている場合は次の画面が表示されます。

ログイン画面-TOTP.png.png

この 認証コード に、 ユーザーの 2FA を有効化 で登録したアプリが生成する6桁の数字のワンタイムパスワードを入力し、 送信 ボタンをクリックします。認証コードが有効であればログインに成功し、ファイルやディレクトリの一覧が表示されます。

バックアップコードの準備

ワンタイムパスワードを出力するデバイスが故障したり、紛失したりしてしまうとログインすることができなくなってしまいます。そこで、そのようなときに備えてバックアップコードを安全に保管しておくことが推奨されます。

バックアップコードは先ほど 2FA を有効化した下記の画面で、 バックアップコードを生成する ボタンをクリックすると表示されます。

Personal のセキュリティ画面-03.png

バックアップコードが生成され、次の画面のように表示されます。

00.07.Screenshot_2018-07-10 設定 - Nextcloud.png

生成されたバックアップコードはファイルへ保存したり、印刷したりしてください。いずれの場合も、安全に保管する必要があります。複数行にわたってバックアップコードが表示されますが、1行につき一つのバックアップコードとなります。1度使ったバックアップコードは無効化され、2度と利用することはできません。

※ スクリーンショットにバックアップコードを写したままにしていますが、言うまでもなくこのキーは無効化(ry

バックアップコードを利用したログインを試す

バックアップコードを用いたログインを試してみます。

まずは Nextcloud からログアウトします。Nextcloud のログイン画面が表示されたら、従来通り ユーザ名かメールアドレスパスワード を入力します。次の 2FA の画面が表示されますが、バックアップコードを有効にしている場合は バックアップコードを使用する というボタンが増えています。ここではバックアップコードを用いたログインを試すので、 認証コード入力せずに バックアップコードを使用する ボタンをクリックします。

ログイン画面-TOTP(バックアップコード).png

次のバックアップコード入力画面が表示されます。先ほど生成したバックアップコードのうち、どれか一つを入力し、矢印(→)ボタンをクリックてください。

バックアップコード入力画面.png

バックアップコードが正しければログインに成功し、ファイルやディレクトリの一覧が表示されます。

また、一度利用したバックアップコードは無効化されます。同じバックアップコードを利用しようとすると、次の画面のように 第二要素の認証でエラーが発生しました と表示されログインに失敗します。

バックアップコード入力画面(エラー).png

おしまい。

13
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
6