RADIUS TACACS+ の 認証順序とローカルパスワード
Junos OSは、ローカルパスワード認証、RADIUS、TACACS+などのさまざまな認証方法をサポートし、 ネットワークへのアクセスを制御します。
複数の認証方法をサポートするようにデバイスを構成する場合、デバイスが異なる認証方法を試す順序に優先順位を付けることができます。このトピックでは、認証順序のしくみと、デバイスでの認証順序の構成方法について説明します。
認証順序の概要
ネットワーク管理者は 、 ステートメントを設定して、ルーターまたはスイッチへのユーザーアクセスを検証するためにさまざまな認証方法を試みる順序 authentication-order を優先することができます。Junos OS認証順序を設定しない場合、デフォルトでは、 は 設定されたローカルパスワードに基づいてユーザーを確認します。Junos OS
認証順序にRADIUSまたはTACACS+サーバーが含まれている にもかかわらず、サーバーが要求に応答しない場合、 常に最後の手段としてローカルパスワード認証が試行されることがデフォルトになります。Junos OS
認証順序にRADIUSまたはTACACS+サーバーが含まれている にもかかわらず、サーバーが要求を拒否する場合、要求の処理はより複雑になります。
-
認証順序の最後に(ローカルパスワード認証)が含まれていて、リモート認証サーバーが認証要求を拒否した場合、デバイスはローカルパスワード認証を試みます。
password
-
(ローカルパスワード認証)が認証順序に含まれておらず、リモート認証サーバーが認証要求を拒否した場合、要求は拒否されて終了します。
password
したがって、デバイスは、リモート認証サーバーが要求を拒否した場合に、デバイスがローカルパスワード認証を試みるための最終認証順序オプションとして含め る必要があります。password
認証順序が に設定されている場合 、デバイスはローカルパスワード認証のみを使用します。authentication-order password
リモート認証の使用
Junos OS をRADIUSまたはTACACS+認証クライアント(あるいはその組み合わせ)として設定できます。
ステートメントに含まれる 認証方法が利用できない場合、または認証方法は使用できるが、対応する認証サーバーが拒否応答を返す場合、 はステートメントに含まれる 次の認証方法を試行します。authentication-order
Junos OSauthentication-order
RADIUS、またはTACACS+サーバー認証は 、以下の1つ以上の理由で失敗する可能性があります。
-
認証方法は構成されていますが、対応する認証サーバーが構成されていません。例えば、RADIUSおよびTACACS+の認証方法は ステートメントに含まれています が、対応するRADIUSまたはTACACS+サーバーは、それぞれの レベルおよび 階層レベルでは設定されていません。
authentication-order
[edit system radius-server]
[edit system tacplus-server]
-
認証サーバーは、そのサーバーに構成されたタイムアウト値より前、またはタイムアウトが設定されていない場合はデフォルトのタイムアウト前に応答しません。
-
ネットワークの問題のため、認証サーバーに到達できません。
認証サーバーは、以下の理由の 1 つまたは両方で拒否応答を返す場合があります。
-
ルーターまたはスイッチにアクセスするユーザーのユーザープロファイルが、認証サーバー上で設定されていません。
-
ユーザーが誤ったログオン資格情報を入力します。
ローカルパスワード認証の使用方法
ステートメントで認証方法を明示的に設定するか、リモート認証サーバーに障害が発生した場合のフォールバックメカニズムとしてこの方法を使用できます。password
authentication-order
認証方法は、 階層レベルで設定されたローカルユーザープロファイルを参照します。password
[edit system login]
以下のシナリオでは、ユーザーはローカルのユーザー名とパスワードを使用してルーターまたはスイッチにログインできます。
-
パスワード認証方法()は、ステートメント内の 認証方法の1つとして明示的に設定されています。
password
authentication-order
この場合、以前の認証方法がログオン資格情報を受け入れない場合、デバイスはローカルパスワード認証を試みます。これは、以前の認証方法が応答に失敗した場合や、ユーザー名またはパスワードが正しくないために拒否応答を返した場合にも当てはまります。
-
パスワード認証方法は、 ステートメント内の 認証方法の1つとして明示的に設定されていません。
authentication-order
この場合、オペレーティングシステムは、構成されたすべての認証方法が応答に失敗した場合にのみ、ローカルパスワード認証を試みます。設定された認証方法がユーザー名またはパスワードが正しくないために拒否応答を返す場合、オペレーティングシステムはローカルパスワード認証を使用しません。
認証試行の順序
は、 階層レベルの ステートメントが、Junos OSがデバイスへのアクセスユーザーを認証するために使用する手順をどのように決定するかを説明しています。表 1authentication-order
[edit system]
構文 |
認証試行の順序 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SSHパブリックキーが設定されている場合、SSHユーザー認証は、 ステートメントで 設定された認証方法を使用する前に、まず公開キー認証を実行しようとします。authentication-order
最初に公開鍵認証を実行せずに、SSHログインでステートメントで 設定された認証方法を使用できるようにする場合は、SSHパブリックキーを設定しないでください。authentication-order
RADIUS、TACACS+、およびローカルパスワード認証の 認証順序の設定
ステートメントを使用すると、ルーターまたはスイッチへのユーザーアクセスを検証する際に、異なる認証方法を試す順序に優先順位を付けることができます。authentication-order
Junos OS 認証順序を設定しない場合、デフォルトでは、ユーザーはローカルで設定されたパスワードに基づいて検証されます。
プレーンテキストを使用してパスワードを設定し、それを暗号化するために依存 している場合でも、パスワードをインターネット経由でプレーンテキストで送信しています。Junos OS事前に暗号化されたパスワードを使用すると、パスワードのプレーンテキストをインターネット経由で送信する必要がないため、より安全です。また、パスワードでは、一度に 1 人のユーザーしかパスワードに割り当てることができません。
一方、 RADIUSとTACACS+はパスワードを暗号化します。これらの認証方法では、ユーザーを 1 人ずつ割り当てる代わりに、一度に一連のユーザーを割り当てることができます。ただし、これらの認証システムの違いは次のとおりです。
-
RADIUS は UDP を使用します。TACACS+ は TCP を使用します。
-
RADIUSが暗号化するのはパスワードのみですが、TACACS+ はセッション全体を暗号化します。
-
RADIUS が認証(デバイス)と許可(ユーザー)を組み合わせ、TACACS+ が認証、許可、説明責任を分離します。
つまり、TACACS+ は RADIUS よりも安全です。ただし、RADIUS の方がパフォーマンスが高く、相互運用性も優れています。RADIUS は広くサポートされていますが、TACACS+ はシスコ独自の製品であり、シスコ以外では広くサポートされていません。
認証順序は、システム、その制限、および IT ポリシーと運用設定に基づいて設定できます。
認証順序を設定するには、 階層レベルで ステートメントを含め ます 。authentication-order
[edit system]
[edit system] user@host# set authentication-order [authentication-methods ]
このステートメントを含めることができる階層レベルの一覧は、このステートメントのステートメント概要のセクションを参照してください。
可能な認証順序入力オプションは次のとおりです。
-
radius
- RADIUS 認証サーバを使用してユーザを確認します。 -
tacplus
- TACACS+ 認証サーバを使用してユーザを検証します。 -
- 階層レベルの認証ステートメント でローカルに設定されたユーザ名とパスワードを使用して、ユーザを検証します。
password
[edit system login user]
チャレンジ ハンドシェイク認証プロトコル (CHAP) 認証シーケンスは、30 秒を超えることはできません。クライアントの認証に 30 秒以上かかる場合、認証は破棄され、新しいシーケンスが開始されます。
例えば、ルーターまたはスイッチが各サーバーへのコンタクトを 3 回試行するように、3 つの RADIUS サーバーを構成するとします。さらに、再試行するたびに、サーバーが 3 秒後にタイムアウトすると仮定します。このシナリオでは、CHAP がエラーと見なす前に RADIUS 認証方法に与えられる最大時間は 27 秒です。この構成に RADIUS サーバーを追加すると、これらのサーバーが試行される前に認証プロセスが中止される可能性があるため、それらのサーバーに接続されない可能性があります。
Junos OS CHAP 認証が一度に持つことができる永続的な認証サーバー要求の数に制限を適用します。そのため、認証サーバー方式(RADIUS など)は、この制限を超えるとクライアントの認証に失敗する可能性があります。認証に失敗した場合、認証に成功してリンクが確立されるまで、ルーターまたはスイッチによって認証シーケンスが再開されます。ただし、RADIUSサーバーが利用できず、 や などの追加の認証方法も構成されている場合は、次の認証方法が試されます。tacplus
password
次に、および認証を構成する例を示します。radius
password
[edit system] user@switch# set authentication-order [ radius password ]
以下の例は、ステートメントの後に ステートメントを挿入する方法を示しています。tacplus
radius
[edit system] user@switch# insert authentication-order tacplus after radius
以下の例は、認証順序から ステートメントを削除する 方法を示しています。radius
[edit system] user@switch# delete authentication-order radius
例:認証順序の設定
この例では、ユーザー ログインの認証順序を設定する方法を示します。
要件
開始する前に、デバイスの初期設定を行います。お使いのデバイスの『スタートアップガイド』をご覧ください。
概要
デバイスへのユーザー アクセスを検証するためにデバイスが使用する認証方法の順序を構成できます。パスワードが一致するか、すべての認証方法が試行されるまで、デバイスはログインを試みるたびに、設定された順序で認証方法を試みます。リモート認証を設定しない場合、ユーザは設定されたローカルパスワードに基づいて検証されます。
この例では、最初にRADIUS認証サービス、次にTACACS+認証サービス、最後にローカルパスワード認証を使用してユーザー認証を試みるようにデバイスを設定します。
ローカルパスワード認証を使用する場合は、システムにアクセスするすべてのユーザーのローカルユーザーアカウントを作成する必要があります。ただし、リモート認証サーバーを使用する場合は、一連のユーザーが共有するテンプレートアカウントを(承認目的で)作成できます。ユーザーがテンプレートアカウントに割り当てられると、コマンドラインインターフェイス(CLI)ユーザー名がログイン名になります。ただし、ユーザーはテンプレートアカウントから権限、ファイル所有権、および有効なユーザーIDを継承します。
設定
手順
CLIクイック構成
この例を手早く設定するには、以下のコマンドをコピーして、テキストファイルに貼り付けます。改行を削除し、ネットワーク設定に合わせて必要な変更を加え、コマンドを[edit]
階層レベルのCLIにコピー、貼り付けしてから、設定モードでcommit
を入力します。
delete system authentication-order set system authentication-order radius insert system authentication-order tacplus after radius insert system authentication-order password after tacplus
GUI クイックコンフィグレーション
ステップバイステップでの手順
認証順序を設定するには:
-
J-Webユーザー インターフェースで、
Configure>System Properties>User Management
を選択します。 -
Edit
をクリックします。「ユーザー管理の編集」ダイアログボックスが表示されます。 -
Authentication Method and Order
タブを選択します。 -
[使用可能な方法] で、デバイスがユーザーの認証に使用する認証方法を選択します。矢印ボタンを使用して、項目を [選択したメソッド] リストに移動します。利用可能な方法は次のとおりです。
-
RADIUS
-
TACACS+
-
ローカルパスワード
複数の方法を使用してユーザーを認証する場合は、この手順を繰り返して、他の方法を [選択した方法] リストに追加します。
-
-
[選択した方法] で、上矢印と下矢印を使用して、デバイスが認証方法を実行する順序を指定します。
-
OK
をクリックして、設定を確認し、設定の候補としてそれを保存します。 -
デバイスを設定した後、
Commit Options>Commit
をクリックします。
ステップバイステップでの手順
認証順序を設定するには:
-
既存の ステートメントを削除します。
authentication-order
[edit] user@host# delete system authentication-order
-
認証順序にRADIUS認証を追加します。
[edit] user@host# set system authentication-order radius
-
TACACS+ 認証を認証オーダーに追加します。
[edit] user@host# insert system authentication-order tacplus after radius
-
ローカルパスワード認証を認証順序に追加します。
[edit] user@host# insert system authentication-order password after tacplus
結果
設定モードで、show system authentication-order
コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の設定手順を繰り返して設定を修正します。
[edit] user@host# show system authentication-order authentication-order [ radius tacplus password ];
デバイスの設定後、コンフィギュレーションモードでcommit
を入力します。
RADIUSまたはTACACS+認証を完全に設定 するには、少なくとも1つの RADIUSまたはTACACS+サーバーを設定し、ユーザーアカウントまたはユーザーテンプレートアカウントを作成する必要があります。
-
RADIUS サーバーを設定します。「例:システム認証用の RADIUS サーバーの設定」 を参照してください。
-
TACACS+サーバーを設定します。「例:システム認証用のTACACS+サーバーの設定」 を参照してください。
-
ユーザーを設定します。「例:新しいユーザーアカウントの設定」 を参照してください。
-
テンプレート アカウントを構成します。「例:テンプレートアカウントの作成」 を参照してください。
検証
設定が正常に機能していることを確認します。
認証順序の設定の確認
目的
デバイスが設定された順序で認証方法を使用していることを確認します。
アクション
認証方法ごとに異なるパスワードを持つテスト ユーザーを作成します。別のパスワードを使用してデバイスにログインします。前の認証方法がパスワードを拒否するか、応答に失敗した場合に、デバイスが後続の認証方法を照会することを確認します。
または、テスト環境では、認証サーバー構成またはローカルユーザーアカウント構成(あるいはその両方)を非アクティブ化して、各認証方法をテストできます。例えば、TACACS+ サーバーをテストするには、RADIUS サーバー設定とユーザーのローカルアカウントを非アクティブ化します。ただし、ユーザーのローカルアカウントを非アクティブ化する場合、ユーザーがユーザーテンプレートなどの ローカルユーザーテンプレートアカウントに引き続きマップされていることを確認する必要があります。remote
例:RADIUS、TACACS+、パスワード認証の システム認証を設定する
次の例は、Junos OS を実行するデバイスで、RADIUS、TACACS+、およびパスワード認証の システム認証を設定する方法を示しています。
この例では、ユーザー Philip と RADIUS サーバーで認証された ユーザーのみがログインできます。ユーザーがログインしてもRADIUSサーバーによって 認証されていない場合、ルーターまたはスイッチへのアクセスが拒否されます。RADIUSサーバーが利用できない場合、ユーザーは認証 方法を使用して認証され、ルーターまたはスイッチへのアクセスが許可されます。password
パスワード認証方法の詳細については、を参照してください 。認証順序の概要
フィリップがシステムにログインしようとしたときに、RADIUS サーバーが彼を認証すると、クラスへのアクセス と権限が付与されます。super-user
ローカル アカウントは、他のユーザー用に構成されません。ユーザーがシステムにログインし、RADIUS サーバーが認証すると、同じユーザーID(UID)9999とクラスに関連する 権限を使用してアクセス権が付与されます。operator
[edit] system { authentication-order radius; login { user philip { full-name "Philip"; uid 1001; class super-user; } user remote { full-name "All remote users"; uid 9999; class operator; } } }
承認のために、テンプレートアカウントを使用して、一連のユーザーが同時に共有できる単一のアカウントを作成できます。たとえば、リモートテンプレートアカウントを作成すると、一連のリモートユーザーが1つのUIDを同時に共有できます。テンプレートアカウントの詳細については、「」を参照してください 。例:認証順序の設定
ユーザーがデバイスにログインすると、RADIUSまたはTACACS+サーバーはユーザーの ログイン名を認証に使用します。認証サーバーがユーザーを正常に認証し、ユーザーが 階層レベルで構成 されていない場合、次の結果になります。[edit system login user]
リモート テンプレート アカウントが 階層レベルで設定されている場合、デバイスはユーザーのデフォルトのリモート テンプレート ユーザー アカウントを使用します。edit system login user remote
リモート テンプレート アカウントは、認証サーバーによって認証されますが、デバイスにローカルに設定されたユーザー アカウントがないすべてのユーザーのデフォルト テンプレート ユーザー アカウントとして機能します。このようなユーザーは、同じログインクラスとUIDを共有します。
代替テンプレート ユーザーを構成するには、RADIUS 認証応答パケットで返されるパラメーターを指定します。user-name
すべての RADIUSサーバーでこのパラメーターを変更できるわけではありません。以下に、Junos OS の設定例を示します。
[edit] system { authentication-order radius; login { user philip { full-name "Philip"; uid 1001; class super-user; } user operator { full-name "All operators"; uid 9990; class operator; } user remote { full-name "All remote users"; uid 9999; class read-only; } } }
RADIUS サーバーが次の情報で構成されているとします 。
ユーザー フィリップ パスワード "オリンピア"
パスワード「bucephalus」とユーザー名「オペレーター」を持つユーザーアレクサンダー
パスワードが「赤毛」、ユーザー名が「オペレーター」のユーザーDarius。
ユーザー Roxane とパスワード "athena"
フィリップは、一意のローカルユーザーアカウントを持っているため、スーパーユーザー()としてのアクセス権が付与されます。super-user
アレクサンダーとダリウスはUID 9990を共有し、オペレーターとしてアクセスできます。Roxane にはテンプレート ユーザーのオーバーライドがないため、他のすべてのリモート ユーザーとアクセスを共有し、読み取り専用のアクセス権を取得します。