ユーザー認証の概要
Junos OS は、ネットワーク管理者がネットワークへのユーザー アクセスを制御するために使用するさまざまな認証方法をサポートしています。これらの方式には、ローカルパスワード認証、RADIUS、 およびTACACS+が含まれます。これらの認証方法のいずれかを使用して、ルーターまたはスイッチへのアクセスを試みるユーザーとデバイスを検証しますSSH および Telnet です。認証により、許可されていないデバイスやユーザーがLANにアクセスすることを防ぎます。
ユーザー認証方法
Junos OS では、次の 3 種類のユーザー認証方法をサポートしています。ローカルパスワード認証、RADIUS、 TACACS+
ローカルパスワード認証では、ルーターまたはスイッチへのログインを許可するユーザーごとにパスワードを設定します。
RADIUSおよびTACACS+は、いずれかのログイン方法を使用してルーターまたはスイッチにアクセスしようとするユーザーを検証するための認証方法です。これらは分散クライアント/サーバーシステムであり、 RADIUSおよびTACACS+クライアントはルーターまたはスイッチで実行され、サーバーはリモートネットワークシステムで実行されます。
ルーターまたはスイッチを、RADIUS、TACACS+クライアント、またはその組み合わせに 設定できます。Junos OS設定ファイルで認証パスワードを設定することもできます。ユーザー アクセスを検証する際に、ソフトウェアが異なる認証方法を試行する順序を設定するために、方法に優先順位を付けることができます。
ユーザー認証用のローカルユーザーテンプレートアカウントの設定
ローカルユーザーテンプレートアカウントを使用して、異なるログインクラスを割り当て、リモート認証サーバーを介して認証されるユーザーに異なる権限を付与します。各テンプレートは、そのテンプレートに割り当てられたユーザーに適した異なる権限セットを定義できます。ルーターまたはスイッチでローカルにテンプレートを定義し、TACACS+ および RADIUS 認証サーバーがテンプレートを参照します。認証済みユーザーがテンプレートアカウントに割り当てられると、CLIユーザー名がログイン名になりますが、ユーザーはテンプレートアカウントから権限、ファイル所有権、および有効なユーザーIDを継承します。
ローカルユーザーテンプレートを設定し、ユーザーがログインすると、Junos OSは認証サーバーにユーザーのログイン名を認証するリクエストを発行します。ユーザーが認証されると、サーバーはローカル ユーザー名を Junos OS(TACACS+ の場合は、RADIUS の場合は)に返します。local-user-name
Juniper-Local-User-Name
次に、Junos OSがそのログイン名にローカルユーザー名が指定されているかどうかを判断し、指定されている場合は、Junos OSがそのローカルユーザーテンプレートにユーザーを割り当てます。認証されたユーザーのローカル ユーザー テンプレートが存在しない場合、ルーターまたはスイッチはデフォルトでこの テンプレートを使用します(設定されている場合)。remote
ローカル ユーザー テンプレートを設定するには、 階層レベルで テンプレートのユーザー名を定義します。[edit system login]
クラスを割り当てて、テンプレートを適用するローカルユーザーに付与する権限を指定します。
[edit system login] user local-username { full-name "Local user account"; uid uid-value; class class-name; }
ローカル ユーザ テンプレートにユーザを割り当てるには、適切なパラメータ( TACACS+ 用 、RADIUS 用)を使用してリモート認証サーバを設定し、ローカル ユーザ テンプレートに定義されたユーザ名を指定します。local-user-name
Juniper-Local-User-Name
ローカルユーザーテンプレートアカウントを共有するユーザーに異なるアクセス権限を設定するには、認証サーバー構成ファイルでベンダー固有の属性を使用して、ユーザーに対して特定のコマンドと構成階層を許可または拒否できます。
この例では、 ローカルデバイスで および ユーザーテンプレートを設定します。sales
engineering
次に、TACACS+ サーバー設定ファイルは、ユーザーを特定のテンプレートに割り当てます。
[edit] system { login { user sales { uid 6003; class sales-class; } user engineering { uid 6004; class super-user; } } }
ユーザー Simon と Rob が認証されると、ルーターまたはスイッチはローカル ユーザー テンプレートを適用します 。sales
ログインユーザーのハロルドとジムが認証されると、ルーターまたはスイッチがローカルユーザーテンプレートを適用します 。engineering
user = simon { ... service = junos-exec { local-user-name = sales allow-commands = "configure" deny-commands = "shutdown" } } user = rob { ... service = junos-exec { local-user-name = sales allow-commands = "(request system) | (show rip neighbor)" deny-commands = "clear" } } user = harold { ... service = junos-exec { local-user-name = engineering allow-commands = "monitor | help | show | ping | traceroute" deny-commands = "configure" } } user = jim { ... service = junos-exec { local-user-name = engineering allow-commands = "show bgp neighbor" deny-commands = "telnet | ssh" } }
ユーザー認証用のリモート ユーザー テンプレート アカウントの設定
ネットワーク デバイスにより、リモート認証されたユーザーをローカルで定義されたユーザー アカウントまたはユーザー テンプレート アカウントにマッピングでき、これにより認証が決定されます。テンプレートアカウントは 、特別なユーザーテンプレートです。remote
デフォルトでは、 は、次の場合に、リモート認証されたユーザーをテンプレート アカウント( 構成済みの場合)に割り当てます。Junos OSremote
-
認証されたユーザーの場合、ローカルデバイスにユーザーアカウントは設定されていません。
-
リモート認証サーバーは、ユーザーをローカルユーザーテンプレートに割り当てません。また、サーバーが割り当てるテンプレートはローカルデバイスでは設定されません。
テンプレートアカウントを設定するには、 階層レベルで ステートメントを含め、テンプレートに割り当てられたユーザーのログインクラスを指定します。remote
user remote
[edit system login]
remote
[edit system login] user remote { full-name "remote users"; uid uid-value; class class-name; }
テンプレートアカウントを共有する ユーザーに異なるアクセス権限を設定するには、認証サーバー設定ファイルでベンダー固有の属性を使用して、ユーザーに対して特定のコマンドと設定階層を許可または拒否できます。remote
例:テンプレートアカウントの作成
この例では、テンプレート アカウントを作成する方法を示します。
要件
この機能を設定する前に、デバイス初期化以外の特別な設定を行う必要はありません。
概要
RADIUSまたはTACACS+認証を使用している場合 、一連のユーザーによって共有されるテンプレートアカウントを作成できます。認証済みユーザーがテンプレートアカウントに割り当てられると、CLIユーザー名がログイン名になりますが、ユーザーはテンプレートアカウントから権限、ファイル所有権、および有効なユーザーIDを継承します。
既定では、次の場合にリモート Junos OS
認証されたユーザーを テンプレート アカウントに割り当てます。remote
-
認証されたユーザーの場合、ローカルデバイスにユーザーアカウントは設定されていません。
-
リモート認証サーバーは、ユーザーをローカルユーザーテンプレートに割り当てません。また、サーバーが割り当てるテンプレートはローカルデバイスでは設定されません。
この例では、テンプレートアカウントを作成し、 ユーザー名 を に、ユーザーの ログインクラスを に設定します。remote
remote
operator
デバイスは、 RADIUSまたはTACACS+によって 認証されているが、ローカルユーザーアカウントを持っていないか、別のローカルテンプレートアカウントに属しているユーザーにテンプレートを割り当てます。remote
次に、ローカルテンプレートアカウントを作成し、ユーザー名をadminに、ログインクラスをスーパーユーザーに設定します。ローカルテンプレートアカウントは、リモート認証されたユーザーを異なるログインクラスに割り当てる必要がある場合に使用します。したがって、各テンプレートは、そのユーザー テンプレートに割り当てられたユーザーに適した異なる権限セットを付与できます。
設定
リモートテンプレートアカウントの作成
ステップバイステップでの手順
テンプレートアカウントを作成するには :remote
-
ユーザーのユーザー名とログイン クラス を設定します。
remote
[edit system login] user@host# set user remote class operator
結果
設定モードで、show system login
コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の設定手順を繰り返して設定を修正します。
[edit] user@host# show system login user remote { class operator; }
デバイスの設定後、コンフィギュレーションモードでcommit
を入力します。
ローカルテンプレートアカウントの作成
ステップバイステップでの手順
ローカルテンプレートアカウントを作成するには:
-
ユーザーテンプレートのユーザー名とログインクラスを設定します。
[edit system login] user@host# set user admin class superuser
結果
設定モードで、show system login
コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の設定手順を繰り返して設定を修正します。
[edit] user@host# show system login user admin { class super-user; }
デバイスの設定後、コンフィギュレーションモードでcommit
を入力します。
RADIUS または TACACS+ 認証を完全に設定 するには、少なくとも 1 つの RADIUS または TACACS+ サーバーを設定し、システム認証の順序を指定する必要があります。詳細については、次のタスクを参照してください。
-
RADIUS サーバーを設定します。「例:システム認証用の RADIUS サーバーの設定」 を参照してください。
-
TACACS+サーバーを設定します。「例:システム認証用のTACACS+サーバーの設定」 を参照してください。
-
システム認証の順序を設定します。「例:認証順序の設定」 を参照してください。
リモート認証サーバーとは
ネットワークでリモート認証サーバーを既に使用している可能性があります。これらのサーバーを使用すると、ネットワーク内のすべてのデバイスに対して一貫したユーザーアカウントのセットを一元的に作成できるため、ベストプラクティスです。リモート認証サーバーを使用して認証、許可、および説明責任(AAA)ソリューションをネットワークに実装すると、ユーザー アカウントの管理がはるかに簡単になります。
ほとんどの企業では、次の 3 つの基本的なリモート認証方法のうち 1 つ以上を使用します。 RADIUS、TACACS+などがあります。Junos OSは3つの方法をすべてサポートしており、Junos OSを設定してあらゆるタイプのリモート認証サーバーにクエリーを実行できます。RADIUS(TACACS+)サーバーの背後にある 考え方はシンプルです。それぞれが中央認証サーバーとして機能し、ルーター、スイッチ、セキュリティデバイス、およびサーバーは、ユーザーがこれらのシステムへのアクセスを試みる際の認証に使用できます。中央ユーザーディレクトリがクライアント/サーバーモデルでの認証、監査、およびアクセス制御にもたらす利点を考えてみてください。RADIUSおよびTACACS+の認証方法は、 ネットワークインフラストラクチャに匹敵するメリットを提供します。
中央サーバーを使用することには、各デバイスでローカルユーザーを作成するという代替手段と比較して、時間がかかり、エラーが発生しやすいタスクに比べて複数の利点があります。中央認証システムにより、パスワードスニッフィングやパスワードリプレイ攻撃に対する保護を提供するSecureIDなどのワンタイムパスワードシステムの使用も簡素化されます。このような攻撃では、誰かがキャプチャしたパスワードを使用してシステム管理者になりすますことができます。
-
RADIUS:相互運用性とパフォーマンスが優先事項である場合は、RADIUS を使用してください。
-
相互運用性 - RADIUS は TACACS+ よりも高い相互運用性を備えていますが、これは主に TACACS+ が独自仕様であるためです。TACACS+ はより多くのプロトコルをサポートしていますが、RADIUS は普遍的にサポートされています。
-
パフォーマンス - RADIUS は、TACACS+ よりもルーターやスイッチの負荷がはるかに軽いです。このため、ネットワーク エンジニアは一般的に TACACS+ よりも RADIUS を好みます。
-
-
TACACS+:セキュリティと柔軟性が優先事項である場合は、TACACS+ を使用する必要があります。
-
セキュリティ—TACACS+はRADIUSよりも安全です。セッション全体が暗号化されるだけでなく、認証と認証が別々に行われるため、ネットワークへの侵入を防ぎます。
-
柔軟性 - 伝送制御プロトコル(TCP)は、UDP よりも柔軟性の高いトランスポート プロトコルです。より高度なネットワークでTCPを使用すると、さらに多くのことができます。さらに、TACACS+ は、NetBIOS など、より多くのエンタープライズ プロトコルをサポートしています。
-