管理ロール
Junos OS では、システムの特定の種類の管理者として機能するシステムユーザーを定義できます。ユーザーに管理ロールを割り当てるには、ログインクラスに管理ロール属性を設定します。監査担当者、暗号担当者、セキュリティ担当者、IDS-役員などのロール属性の 1 つを管理ユーザーに割り当てることができます。
管理ロールの設計方法
システム・ユーザーは、そのユーザーがシステムの特定の種類の管理者として機能できるようにするクラスのメンバーになることができます。アイテムを表示または変更するために特定のロールを要求すると、ユーザーがシステムから取得できる情報の範囲が制限されます。また、ユーザーによる変更や監視に対して開かれているシステムの量も制限されます。システム管理者は、管理者の役割を設計するときに、次のガイドラインに従う必要があります。
どのユーザーも
rootとしてシステムにログインすることを許可しないでください。各ユーザーを、そのユーザーの職務の遂行に必要な最小限の特権セットに制限します。
shellパーミッションフラグを含むログインクラスへのユーザーの所属を許可しないでください。shellパーミッション フラグを使用すると、ユーザーは CLI からstart shellコマンドを実行できます。ユーザーにロールバック権限を許可します。ロールバック権限では、管理者が実行した操作を元に戻すことはできますが、変更をコミットすることはできません。
ロールに必要な権限を持つようにログインクラスを設定することで、ユーザーに管理ロールを割り当てることができます。各クラスを設定して、設定ステートメントとコマンドへのアクセスを名前で許可または拒否できます。これらの制限は、クラスで構成されているパーミッション フラグよりも優先されます。次のいずれかのロール属性を管理ユーザーに割り当てることができます。
Crypto-administrator- ユーザが暗号化データを設定および監視できるようにします。Security-administrator- ユーザーがセキュリティ データを設定および監視できるようにします。Audit-administrator- ユーザーが監査データを設定および監視できるようにします。IDS-administrator- ユーザーが侵入検出サービス(IDS)セキュリティ ログを監視してクリアできるようにします。
各ロールは、次の特定の管理機能を実行できます。
Cryptographic Administrator
暗号化セルフテストを設定します。
暗号化セキュリティ データ パラメーターを変更します。
Audit Administrator
監査レビューの検索と並べ替え機能を構成および削除します。
監査レコードを検索して並べ替えます。
検索パラメーターと並べ替えパラメーターを構成します。
監査ログを手動で削除します。
Security Administrator
暗号セルフテスト動作を呼び出し、決定し、変更します。
監査分析と監査選択機能の有効化、無効化、決定、変更を行い、監査ログを自動的に削除するようデバイスを設定します。
セキュリティ アラームを有効または無効にします。
トランスポート層接続のクォータの制限を指定します。
制御された接続指向リソースのクォータの制限、ネットワーク ID、および期間を指定します。
インターネット制御メッセージプロトコル(ICMP)またはアドレス解決プロトコル(ARP)の使用を許可するネットワークアドレスを指定します。
タイム スタンプで使用する時刻と日付を構成します。
非認証情報フローセキュリティ機能ポリシー(SFP)、認証情報フローセキュリティ機能ポリシー、認証されていないデバイスサービス、および任意アクセス制御ポリシーの情報フローまたはアクセス制御ルールと属性を照会、変更、削除、および作成します。
非認証情報フローSFP、認証情報フローSFP、認証されていない評価対象(TOE)サービス、および随意アクセス制御ポリシーの下でオブジェクト情報が作成されるときに,省略値を上書きする初期値を指定します。
管理セッションを確立できるアドレスを制御するルールを作成、削除、または変更します。
ユーザー、サブジェクト、およびオブジェクトに関連付けられたセキュリティ属性を指定し、取り消します。
デバイスが管理者に警告する監査ストレージ容量の割合を指定します。
認証エラーを処理し、SSH または CLI からの認証試行の失敗回数を変更します。この認証試行の失敗回数は、それ以降の認証試行に対してプログレッシブ スロットルが適用される前、および接続が切断されるまでに発生する可能性があります。
デバイスの基本ネットワーク構成を管理します。
IDS Administrator- IDS セキュリティ アラーム、侵入アラーム、監査の選択、および監査データを指定します。
これらの管理ロール用に作成されたクラスでセキュリティ ロール属性を設定する必要があります。この属性は、セキュリティ ログを表示およびクリアできるユーザーを制限します。これは、構成だけでは実行できないアクションです。
例えば、IDS ログのクリアと表示を IDS 管理者ロールに制限する場合は、IDS 管理者ロール用に作成された ids-admin クラスでセキュリティー・ロール属性を設定する必要があります。同様に、セキュリティロールを他の管理者値のいずれかに設定して、そのクラスが非 IDS ログのみをクリアして表示できないように制限する必要があります。
ユーザーが既存の設定を削除しても、削除された設定の階層レベル(ユーザーに変更権限がない子オブジェクト)の下にある設定ステートメントはデバイスに残ります。
例:管理者の役割を構成する方法
この例では、他のすべての管理ロールとは別に、個別の一意の権限セットに対して個々の管理ロールを設定する方法を示します。
要件
この機能を設定する前に、デバイス初期化以外の操作を行う必要はありません。
概要
この例では、4 つの admin ユーザー ロールを設定する方法を示します。
audit-officerクラスのaudit-admincrypto-officerクラスのcrypto-adminsecurity-officerクラスのsecurity-adminids-officerクラスのids-admin
security-adminクラスが設定されている場合、管理者を作成する権限は、security-adminクラスを作成したユーザーから取り消されます。新しいユーザーとログインの作成は、 security-officerの裁量に委ねられています。
この例では、前のリストに示されている 4 つの管理ユーザー ロール (監査管理者、暗号管理者、セキュリティ管理者、ID 管理者) を作成します。ロールごとに、ロールに関連するアクセス許可フラグを割り当てます。その後、各管理ロールの名前によって、設定ステートメントとコマンドへのアクセスを許可または拒否します。これらの特定の制限は、クラスで設定されたパーミッションフラグよりも優先されます。たとえば、request system set-encryption-key コマンドを実行できるのはcrypto-adminだけで、アクセスするには security パーミッション フラグが必要です。security-adminのみが設定に system time-zone ステートメントを含めることができるため、これには system-control パーミッション フラグが必要です。
設定
手順
CLIクイック構成
この例を手早く設定するには、以下のコマンドをコピーして、テキストファイルに貼り付けます。改行を削除し、ネットワーク設定に合わせて必要な変更を加え、コマンドを[edit]階層レベルのCLIにコピー、貼り付けしてから、設定モードでcommitを入力します。
set system login class audit-admin permissions security set system login class audit-admin permissions trace set system login class audit-admin permissions maintenance set system login class audit-admin allow-commands "^clear (log|security log)" set system login class audit-admin deny-commands "^clear (security alarms|system login lockout)|^file (copy|delete|rename)|^request (security|system set-encryption-key)|^rollback|^set date|^show security (alarms|dynamic-policies|match-policies|policies)|^start shell"; set system login class audit-admin security-role audit-administrator set system login class crypto-admin permissions admin-control set system login class crypto-admin permissions configure set system login class crypto-admin permissions maintenance set system login class crypto-admin permissions security-control set system login class crypto-admin permissions system-control set system login class crypto-admin permissions trace set system login class crypto-admin allow-commands "^request system set-encryption-key" set system login class crypto-admin deny-commands "^clear (log|security alarms|security log|system login lockout)|^file (copy|delete|rename)|^rollback|^set date|^show security (alarms|dynamic-policies|match-policies|policies)|^start shell" set system login class crypto-admin allow-configuration-regexps ["security (ike|ipsec) (policy|proposal)" "security ipsec ^vpn$ .* manual (authentication|encryption|protocol|spi)" "system fips self-test after-key-generation"] set system login class crypto-admin security-role crypto-administrator set system login class security-admin permissions all set system login class security-admin deny-commands "^clear (log|security log)|^(clear|show) security alarms alarm-type idp|^request (security|system set-encryption-key)|^rollback|^start shell" set system login class security-admin deny-configuration-regexps ["security alarms potential-violation idp" "security (ike|ipsec) (policy|proposal)" "security ipsec ^vpn$ .* manual (authentication|encryption|protocol|spi)" "security log cache" "security log exclude .* event-id IDP_.*" "system fips self-test after-key-generation"] set system login class security-admin security-role security-administrator set system login class ids-admin permissions configure set system login class ids-admin permissions security-control set system login class ids-admin permissions trace set system login class ids-admin permissions maintenance set system login class ids-admin allow-configuration-regexps ["security alarms potential-violation idp" "security log exclude .* event-id IDP_.*"] set system login class ids-admin deny-commands "^clear log|^(clear|show) security alarms (alarm-id|all|newer-than|older-than|process|severity)|^(clear|show) security alarms alarm-type (authentication|cryptographic-self-test|decryption-failures|encryption-failures|ike-phase1-failures|ike-phase2-failures|key-generation-self-test|non-cryptographic-self-test|policy|replay-attacks)|^file (copy|delete|rename)|^request (security|system set-encryption-key)|^rollback|^set date|^show security (dynamic-policies|match-policies|policies)|^start shell" set system login class ids-admin deny-configuration-regexps ["security alarms potential-violation (authentication|cryptographic-self-test|decryption-failures|encryption-failures|ike-phase1-failures|ike-phase2-failures|key-generation-self-test|non-cryptographic-self-test|policy|replay-attacks)"] set system login class ids-admin security-role ids-admin set system login user audit-officer class audit-admin set system login user crypto-officer class crypto-admin set system login user security-officer class security-admin set system login user ids-officer class ids-admin set system login user audit-officer authentication plain-text-password set system login user crypto-officer authentication plain-text-password set system login user security-officer authentication plain-text-password set system login user ids-officer authentication plain-text-password
ステップバイステップでの手順
管理ロールを設定するには:
-
audit-adminログインクラスを作成します。[edit] user@host# edit system login class audit-admin [edit system login class audit-admin] user@host# set permissions security user@host# set permissions trace user@host# set permissions maintenance
-
audit-adminログインクラスの制限を設定します。[edit system login class audit-admin] user@host# set allow-commands "^clear (log|security log)" user@host# set deny-commands "^clear (security alarms|system login lockout)|^file (copy|delete|rename)|^request (security|system set-encryption-key)|^rollback|^set date|^show security (alarms|dynamic-policies|match-policies|policies)|^start shell" user@host# set security-role audit-administrator
-
crypto-adminログインクラスを作成します。[edit] user@host# edit system login class crypto-admin [edit system login class crypto-admin] user@host# set permissions admin-control user@host# set permissions configure user@host# set permissions maintenance user@host# set permissions security-control user@host# set permissions system-control user@host# set permissions trace
-
crypto-adminログインクラスの制限を設定します。[edit system login class crypto-admin] user@host# set allow-commands "^request system set-encryption-key" user@host# set deny-commands "^clear (log|security alarms|security log|system login lockout)|^file (copy|delete|rename)|^rollback|^set date|^show security (alarms|dynamic-policies|match-policies|policies)|^start shell" user@host# set allow-configuration-regexps ["security (ike|ipsec) (policy|proposal)" "security ipsec ^vpn$ .* manual (authentication|encryption|protocol|spi)" "system fips self-test after-key-generation"] user@host# set security-role crypto-administrator
-
security-adminログインクラスを作成します。[edit] user@host# edit system login class security-admin [edit system login class security-admin] user@host# set permissions all
-
security-adminログインクラスの制限を設定します。[edit system login class security-admin] user@host# set deny-commands "^clear (log|security log)|^(clear|show) security alarms alarm-type idp|^request (security|system set-encryption-key)|^rollback|^start shell" user@host# set deny-configuration-regexps ["security alarms potential-violation idp" "security (ike|ipsec) (policy|proposal)" "security ipsec ^vpn$ .* manual (authentication|encryption|protocol|spi)" "security log cache" "security log exclude .* event-id IDP_.*" "system fips self-test after-key- generation"] user@host# set security-role security-administrator
-
ids-adminログインクラスを作成します。[edit] user@host# edit system login class ids-admin [edit system login class ids-admin] user@host# set permissions configure user@host# set permissions maintenance user@host# set permissions security-control user@host# set permissions trace
-
ids-adminログインクラスの制限を設定します。[edit system login class ids-admin] user@host# set allow-configuration-regexps ["security alarms potential-violation idp" "security log exclude .* event-id IDP_.*" user@host# set deny-commands "^clear log|^(clear|show) security alarms (alarm-id|all|newer-than|older-than|process|severity)|^(clear|show) security alarms alarm-type (authentication|cryptographic-self-test|decryption-failures|encryption-failures|ike-phase1-failures|ike-phase2-failures|key-generation-self-test|non-cryptographic-self-test|policy|replay-attacks)|^file (copy|delete|rename)|^request (security|system set-encryption-key)|^rollback|^set date|^show security (dynamic-policies|match-policies|policies)|^start shell" user@host# set deny-configuration-regexps ["security alarms potential-violation (authentication|cryptographic-self-test|decryption-failures|encryption-failures|ike-phase1-failures|ike-phase2-failures|key-generation-self-test|non-cryptographic-self-test|policy|replay-attacks)"] user@host# set security-role ids-administrator
-
ユーザーをロールに割り当てます。
[edit] user@host# edit system login [edit system login] user@host# set user audit-officer class audit-admin user@host# set user crypto-officer class crypto-admin user@host# set user security-officer class security-admin user@host# set user ids-officer class ids-admin
-
ユーザーのパスワードを設定します。
[edit system login] user@host# set user audit-officer authentication plain-text-password user@host# set user crypto-officer authentication plain-text-password user@host# set user security-officer authentication plain-text-password user@host# set user ids-officer authentication plain-text-password
結果
設定モードで、show systemコマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
[edit]
user@host# show system
system {
login {
class audit-admin {
permissions [ maintenance security trace ];
allow-commands "^clear (log|security log)";
deny-commands "^clear (security alarms|system login lockout)|^file (copy|delete|rename)|^request (security|system set-encryption-key)|^rollback|^set date|^show security (alarms|dynamic-policies|match-policies|policies)|^start shell";
security-role audit-administrator;
}
class crypto-admin {
permissions [ admin-control configure maintenance security-control system-control trace ];
allow-commands "^request (system set-encryption-key)";
deny-commands "^clear (log|security alarms|security log|system login lockout)|^file (copy|delete|rename)|^rollback|^set date|^show security (alarms|dynamic-policies|match-policies|policies)|^start shell";
allow-configuration-regexps [ "security (ike|ipsec) (policy|proposal)" "security ipsec ^vpn$ .* manual (authentication|encryption|protocol|spi)" "system fips self-test after-key-generation" ];
security-role crypto-administrator;
}
class security-admin {
permissions [all];
deny-commands "^clear (log|security log)|^(clear|show) security alarms alarm-type idp|^request (security|system set-encryption-key)|^rollback|^start shell";
deny-configuration-regexps [ "security alarms potential-violation idp" "security (ike|ipsec) (policy|proposal)" "security ipsec ^vpn$ .* manual (authentication|encryption|protocol|spi)" "security log exclude .* event-id IDP_.*" "system fips self-test after-key-generation" ];
security-role security-administrator;
}
class ids-admin {
permissions [ configure maintenance security-control trace ];
deny-commands "^clear log|^(clear|show) security alarms (alarm-id|all|newer-than|older-than|process|severity)|^(clear|show) security alarms alarm-type
(authentication | cryptographic-self-test | decryption-failures | encryption-failures
| ike-phase1-failures | ike-phase2-failures|key-generation-self-test |
non-cryptographic-self-test |policy | replay-attacks) | ^file (copy|delete|rename)
|^request (security|system set-encryption-key) | ^rollback |
^set date | ^show security (dynamic-policies|match-policies|policies) |^start shell";
allow-configuration-regexps [ "security alarms potential-violation idp" "security log exclude .* event-id IDP_.*" ];
deny-configuration-regexps "security alarms potential-violation (authentication|cryptographic-self-test|decryption-
failures|encryption-failures|ike-phase1-failures|ike-phase2-failures|
key-generation-self-test|non-cryptographic-self-test|policy|replay-attacks)"
security-role ids-administrator;
}
user audit-officer {
class audit-admin;
authentication {
encrypted-password "$1$ABC123"; ## SECRET-DATA
}
}
user crypto-officer {
class crypto-admin;
authentication {
encrypted-password "$1$ABC123."; ## SECRET-DATA
}
}
user security-officer {
class security-admin;
authentication {
encrypted-password "$1$ABC123."; ##SECRET-DATA
}
}
user ids-officer {
class ids-admin;
authentication {
encrypted-password "$1$ABC123/"; ## SECRET-DATA
}
}
}
}
デバイスの設定後、コンフィギュレーションモードでcommitを入力します。
検証
設定が正常に機能していることを確認します。
ログイン権限の確認
目的
現在のユーザーのログイン権限を確認します。
アクション
動作モードで、 show cli authorization コマンドを入力して、ユーザーのログイン権限を確認します。
user@host> show cli authorization
Current user: 'example' class 'super-user'
Permissions:
admin -- Can view user accounts
admin-control-- Can modify user accounts
clear -- Can clear learned network info
configure -- Can enter configuration mode
control -- Can modify any config
edit -- Can edit full files
field -- Can use field debug commands
floppy -- Can read and write the floppy
interface -- Can view interface configuration
interface-control-- Can modify interface configuration
network -- Can access the network
reset -- Can reset/restart interfaces and daemons
routing -- Can view routing configuration
routing-control-- Can modify routing configuration
shell -- Can start a local shell
snmp -- Can view SNMP configuration
snmp-control-- Can modify SNMP configuration
system -- Can view system configuration
system-control-- Can modify system configuration
trace -- Can view trace file settings
trace-control-- Can modify trace file settings
view -- Can view current values and statistics
maintenance -- Can become the super-user
firewall -- Can view firewall configuration
firewall-control-- Can modify firewall configuration
secret -- Can view secret statements
secret-control-- Can modify secret statements
rollback -- Can rollback to previous configurations
security -- Can view security configuration
security-control-- Can modify security configuration
access -- Can view access configuration
access-control-- Can modify access configuration
view-configuration-- Can view all configuration (not including secrets)
flow-tap -- Can view flow-tap configuration
flow-tap-control-- Can modify flow-tap configuration
idp-profiler-operation-- Can Profiler data
pgcp-session-mirroring-- Can view pgcp session mirroring configuration
pgcp-session-mirroring-control-- Can modify pgcp session mirroring configura
tion
storage -- Can view fibre channel storage protocol configuration
storage-control-- Can modify fibre channel storage protocol configuration
all-control -- Can modify any configuration
Individual command authorization:
Allow regular expression: none
Deny regular expression: none
Allow configuration regular expression: none
Deny configuration regular expression: noneこの出力は、ログイン権限を要約したものです。
ローカル管理者アカウントを構成する方法
スーパーユーザー権限は、ルーターで任意のコマンドを使用する権限をユーザーに付与し、通常はシステム管理者などの一部のユーザーのために予約されています。システム管理者は、ローカル管理者アカウントをパスワードで保護して、権限のないユーザーがスーパーユーザーのコマンドにアクセスできないようにする必要があります。これらのスーパーユーザーコマンドを使用して、システム設定を変更することができます。RADIUS認証を使用するユーザーは、ローカルパスワードも構成する必要があります。RADIUS サーバーが応答しない場合、ログイン プロセスはローカル管理者アカウントでのローカル パスワード認証に戻ります。
次の例は、スーパーユーザー特権を持つ admin というパスワードで保護されたローカル管理アカウントを設定する方法を示しています。
[edit]
system {
login {
user admin {
uid 1000;
class superuser;
authentication {
encrypted-password "<PASSWORD>"; ## SECRET-DATA
}
}
}
}