IOSルーターの特定のユーザーが特定のコマンドしか入力できないことを確認する必要があります。私は特権レベルでこれを行うことができましたが、ユーザーが「enable」と入力するたびに、特権レベル15に戻り、すべてのコマンドを入力しようとしています。彼が「有効にする」と入力しても、許可した特定のコマンドしか入力できないようにしたいのですが。私もRole-Based cliを試しましたが、同じ問題に遭遇しました。外部認証サーバーを使用したくありません。
ありがとう!
IOSルーターの特定のユーザーが特定のコマンドしか入力できないことを確認する必要があります。私は特権レベルでこれを行うことができましたが、ユーザーが「enable」と入力するたびに、特権レベル15に戻り、すべてのコマンドを入力しようとしています。彼が「有効にする」と入力しても、許可した特定のコマンドしか入力できないようにしたいのですが。私もRole-Based cliを試しましたが、同じ問題に遭遇しました。外部認証サーバーを使用したくありません。
ありがとう!
回答:
あなたは自分の質問に対する答えの大部分をすでに知っています-特定の特権レベルでユーザーが実行できるコマンドを構成する必要があります。enable
特権レベル引数がない場合、デフォルトでは特権レベル15になり、すべてのコマンドを実行する権限があります。実行する必要がある2つのことは次のとおりです。
デフォルトの有効化パスワードを変更して、ユーザーがアクセスできないようにし、特権レベル15に到達できないようにします。
ログイン時のユーザーのデフォルトの特権レベルを、ユーザーが実行できるコマンドを変更したのと同じ特権レベルに設定します。
Router(config)#username joe privilege <x> password foobar
ここで、Xは目的のコマンドセットの特権レベルです。
編集:これは実際にはユーザーベースの真のコマンド認証を提供するのではなく、コマンド自体は一度に1つの特権レベルにのみバインドされるため、特権レベルベースの認証のみを提供することを指摘しなければならないので、実質的にルーター全体の変更です。これは階層的に機能することを目的としています。各特権レベルは、そのレベルとそれより下のすべてのレベルでコマンドを実行できます。真のユーザーベースの認証が必要な場合は、何らかのAAAサーバーが必要です(以下の私のメモを参照)。
技術的には、enable
コマンドの特権レベルをユーザーの特権レベルよりも1つ高く変更して、コマンドを実行するオプションすら与えないようにすることもできます。
Router(config)#privilege exec level <x> enable
もちろんこれは、ユーザーが構成コマンドを実行できないようにすることを前提としています。
別のオプションは、ユーザーがログインして入力するときに、enable
特権レベルなし(デフォルトは15)ではなく、特権レベルを指定する必要があることを確認することです。
Router>enable <x>
必要に応じて、16の特権レベルすべてに有効なパスワードを指定できます。
私の最後のポイントは、外部AAAサーバーがなければ、これらすべてがお尻の大きな痛みです。初期設定のコストのみがかかるオープンソースのTACACS +実装が多数利用可能ですが、これはこのようなことをやや簡単に行うことができ、集中化されているため、複数のルーターがある場合、同じコマンドを繰り返す必要はありません。管理しているすべてのデバイスの特権縄跳び。これがAAAサーバーがそもそも存在する理由であり、AAAサーバーを使用しないという要件はあまり意味がありません。