Menu Close
Settings Close

Language and Page Formatting Options

Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

22.3. ワンタイムパスワード

重要
OTP 認証の IdM ソリューションは、Red Hat Enterprise Linux 7.1 以降を実行しているクライアントでのみサポートされます。
ワンタイムパスワード(OTP)は、1 つの認証セッションにのみ有効になり、使用後に無効になります。従来の静的パスワードとは異なり、認証トークンによって生成された OTP は変更を維持します。OTP は、2 要素認証の一部として使用されます。
  1. ユーザーは従来のパスワードで認証します。
  2. ユーザーは、認識された OTP トークンによって生成された OTP コードを提供します。
2 要素認証は、従来のパスワードのみを使用した認証よりも安全であると考えられます。ログイン中に OTP を傍受しても、その時点で傍受された OTP はすでに無効になり、認証の成功にのみ使用可能であるためです。
警告
現在、以下のセキュリティーと、IdM の OTP サポートに関連しています。
  • 最も重要なセキュリティー制限は、システム全体で攻撃を再生する可能性のある脆弱性です。レプリケーションは非同期であるため、OTP コードはレプリケーション期間中に再利用できます。ユーザーは 2 つのサーバーに同時にログインできる場合があります。ただし、この脆弱性は通常、包括的な暗号化のために悪用するのが難しくなります。
  • OTP 認証をサポートしないクライアントを使用して、TGT (Ticket-Granting Ticket) を取得することはできません。これは、mod_auth_kerb モジュールまたは Generic Security Services API(GSSAPI)を使用した認証など、特定のユースケースに影響を及ぼす可能性があります。
  • FIPS モードが有効な場合は、IdM ソリューションでパスワード + OTP を使用することはできません。

22.3.1. IdM での OTP 認証の仕組み

22.3.1.1. IdM でサポートされている OTP トークン

ソフトウェアおよびハードウェアトークン

IdM は、ソフトウェアトークンとハードウェアトークンの両方をサポートします。

ユーザー管理のトークンおよび管理者管理のトークン

ユーザーは独自のトークンを管理でき、管理者はそれらのトークンを管理できます。
ユーザー管理のトークン
ユーザーは、Identity Management のユーザー管理トークンを完全に制御できます。トークンの作成、編集、または削除が可能です。
管理者管理のトークン
管理者は、管理者管理のトークンをユーザーのアカウントに追加します。ユーザー自体には、このようなトークンに対する読み取り専用アクセスがあります。トークンを管理または変更するパーミッションがなく、これらをいずれの方法でも設定する必要はありません。
現在、アクティブなトークンのみであれば、ユーザーはトークンを削除または非アクティブにすることはできません。管理者は、最後にアクティブなトークンを削除または非アクティブ化することはできませんが、別のユーザーの最後のアクティブなトークンを削除または非アクティブ化することができます。

対応している OTP アルゴリズム

Identity Management は、以下にある、2 つの標準 OTP メカニズムに対応しています。
  • HMAC ベースのワンタイムパスワード (HOTP) アルゴリズムは、カウンターに基づいています。HMAC は、Hashed Message Authentication Code (ハッシュメッセージ認証コード) を表しています。
  • 時間ベースのワンタイムパスワード (TOTP) アルゴリズムは、時間ベースの移動要素に対応する HOTP の拡張機能です。

22.3.1.2. 利用可能な OTP 認証方法

OTP 認証を有効にする場合、以下の認証方法を選択できます。
2 要素認証(パスワード + OTP)
この方法では、標準パスワードと OTP コードの両方を入力する必要があります。
パスワード
この方法では、標準のパスワードのみを使用して認証を行うオプションがあります。
RADIUS プロキシーサーバー認証
OTP 検証に RADIUS サーバーを設定する方法は、「プロプライエタリー OTP ソリューションからの移行」 を参照してください。

グローバルおよびユーザー固有の認証方法

これらの認証方法は、グローバルまたは個々のユーザーに対して設定できます。
  • デフォルトでは、ユーザー固有の認証方法設定はグローバル設定よりも優先されます。ユーザーに認証方法が設定されていない場合、グローバルに定義されているメソッドが適用されます。
  • 任意のユーザーのユーザーごとの認証方法設定を無効にできます。これにより、IdM はユーザーごとの設定を無視し、常にユーザーにグローバル設定を適用するようになります。

複数の認証方法の統合

複数のメソッドを一度に設定すると、認証を成功させるには、いずれかの方法で十分です。以下に例を示します。
  • 2 要素とパスワード認証の両方を設定する場合、ユーザーはパスワード(最初の係数)を指定する必要がありますが、コマンドラインを使用する場合は OTP(2 番目の係数)を提供することは任意です。
    First Factor:
    Second Factor (optional):
  • Web UI では、ユーザーは両方の要素を指定する必要があります。
注記
個々のホストまたはサービスは、OTP などの特定の認証方法を必要とするように設定できます。最初の要素を使用してこのようなホストまたはサービスに対して認証しようとすると、アクセスは拒否されます。「ユーザーの認証方法に基づいたサービスとホストへのアクセス制限」を参照してください。
ただし、RADIUS と別の認証方法が設定されている場合には、マイナーな例外が存在します。
  • Kerberos は常に RADIUS を使用しますが、LDAP は使用しません。LDAP は、パスワードと 2 要素認証メソッドのみを認識します。
  • 外部の 2 要素認証プロバイダーを使用する場合は、アプリケーションから Kerberos を使用します。パスワードを使用した認証のみを許可する場合は、LDAP を使用します。アプリケーションは、Kerberos または LDAP のいずれかの設定を可能にする Apache モジュールおよび SSSD を利用することが推奨されます。

22.3.1.3. GNOME Keyring サービスのサポート

IdM は、OTP 認証と GNOME Keyring サービスを統合します。GNOME Keyring 統合では、ユーザーは最初の要素と 2 番目の要素を個別に入力する必要があります。
First factor: static_password
Second factor: one-time_password

22.3.1.4. OTP を使用したオフライン認証

IdM は、オフラインの OTP 認証に対応します。ただし、オフラインでログインできるようにするには、静的パスワードと OTP を個別に入力して、システムがオンラインになると、最初に認証する必要があります。
First factor: static_password
Second factor: one-time_password
オンラインでログインする際に両方のパスワードが別個に入力されると、中央認証サーバーが利用できない場合でもユーザーは認証が可能になります。IdM は、ユーザーがオフライン時に従来の静的パスワードのみを要求することに注意してください。
IdM は、First factor プロンプトで 1 つの文字列に静的パスワードと OTP の両方を入力することもできます。ただし、これはオフラインの OTP 認証と互換性がありません。ユーザーが両方の要素を 1 つのプロンプトで入力すると、認証時に IdM が常に中央認証サーバーに接続する必要があります。これには、システムをオンラインにする必要があります。
重要
ノートパソコンなど、オフラインでも動作するデバイスで OTP 認証を使用する場合は、オフライン認証が利用可能になるように、Red Hat は、静的パスワードと OTP を個別に入力することを推奨します。そうしないと、IdM では、システムがオフラインになった後にログインできなくなります。
OTP オフライン認証を活用する場合は、静的パスワードと OTP パスワードを別々に入力する以外には、以下の条件を満たしていることを確認してください。
  • /etc/sssd/sssd.conf ファイルの cache_credentials オプションは True に設定され、最初のファクターパスワードをキャッシュできるようにします。
  • First-factor の静的パスワードは、/etc/sssd/sssd.conf で設定した cache_credentials_minimal_first_factor_length オプションに定義されたパスワードの長さの要件に対応します。デフォルトの最小長は 8 文字です。オプションの詳細は、sssd.conf(5) の man ページを参照してください。
/etc/sssd/sssd.confkrb5_store_password_if_offline オプションが true に設定されている場合でも、SSSD は、システムがオンラインになったときに Kerberos チケット保証チケット(TGT)の更新を試行しません。この時点で OTP が無効である可能性があるためです。この状況で TGT を取得するには、両方の要素を使用して再度認証する必要があります。