SNMP に関する情報
簡易ネットワーク管理プロトコル(SNMP)は、SNMP マネージャとエージェント間の通信用メッセージ フォーマットを提供する、アプリケーションレイヤ プロトコルです。SNMP では、ネットワーク内のデバイスのモニタリングと管理に使用する標準フレームワークと共通言語が提供されます。
SNMP 機能の概要
SNMP フレームワークは 3 つの部分で構成されます。
-
SNMP マネージャ:SNMP を使用してネットワーク デバイスのアクティビティを制御し、モニタリングするシステム
-
SNMP エージェント:デバイスのデータを維持し、必要に応じてこれらのデータを管理システムに報告する、管理対象デバイス内のソフトウェア コンポーネント。Cisco Nexus デバイスはエージェントおよび MIB をサポートします。SNMP エージェントをイネーブルにするには、マネージャとエージェントの関係を定義する必要があります。
-
MIB(Management Information Base; 管理情報ベース):SNMP エージェントの管理対象オブジェクトの集まり
Note |
Cisco NX-OS は、イーサネット MIB の SNMP セットをサポートしません。 |
Cisco Nexus デバイスは、SNMPv1、SNMPv2c、および SNMPv3 をサポートします。SNMPv1 および SNMPv2c はどちらも、コミュニティベース形式のセキュリティを使用します。
SNMP は、RFC 3410(http://tools.ietf.org/html/rfc3410)、RFC 3411(http://tools.ietf.org/html/rfc3411)、RFC 3412(http://tools.ietf.org/html/rfc3412)、RFC 3413(http://tools.ietf.org/html/rfc3413)、RFC 3414(http://tools.ietf.org/html/rfc3414)、RFC 3415(http://tools.ietf.org/html/rfc3415)、RFC 3416(http://tools.ietf.org/html/rfc3416)、RFC 3417(http://tools.ietf.org/html/rfc3417)、RFC 3418(http://tools.ietf.org/html/rfc3418)、および RFC 3584(http://tools.ietf.org/html/rfc3584)で定義されています。
SNMP 通知
SNMP の重要な機能の 1 つは、SNMP エージェントから通知を生成できることです。これらの通知では、要求を SNMP マネージャから送信する必要はありません。通知は、不正なユーザ認証、再起動、接続の切断、隣接ルータとの接続の切断、その他の重要なイベントを表示します。
Cisco NX-OS は、トラップまたはインフォームとして SNMP 通知を生成します。トラップは、エージェントからホスト レシーバ テーブルで指定された SNMP マネージャに送信される、非同期の非確認応答メッセージです。インフォームは、SNMP エージェントから SNMP マネージャに送信される非同期メッセージで、マネージャは受信したという確認応答が必要です。
トラップの信頼性はインフォームより低くなります。SNMP マネージャはトラップを受信しても確認応答(ACK)を送信しないからです。このため、トラップが受信されたかどうかをスイッチが判断できません。インフォーム要求を受信する SNMP マネージャは、SNMP 応答プロトコル データ ユニット(PDU)でメッセージの受信を確認応答します。Cisco Nexus デバイスが応答を受信しない場合、インフォーム要求を再び送信できます。
複数のホスト レシーバーに通知を送信するよう Cisco NX-OS を設定できます。
SNMPv3
SNMPv3 は、ネットワーク経由のフレームの認証と暗号化を組み合わせることによって、デバイスへのセキュア アクセスを実現します。SNMPv3 が提供するセキュリティ機能は次のとおりです。
-
メッセージの完全性:パケットが伝送中に改ざんされていないことを保証します。
-
認証:メッセージのソースが有効かどうかを判別します。
-
暗号化:許可されていないソースにより判読されないように、パケットの内容のスクランブルを行います。
SNMPv3 では、セキュリティ モデルとセキュリティ レベルの両方が提供されています。セキュリティ モデルは、ユーザおよびユーザが属するロールを設定する認証方式です。セキュリティ レベルとは、セキュリティ モデル内で許可されるセキュリティのレベルです。セキュリティ モデルとセキュリティ レベルの組み合わせにより、SNMP パケット処理中に採用されるセキュリティ メカニズムが決まります。
SNMPv1、SNMPv2、SNMPv3 のセキュリティ モデルおよびセキュリティ レベル
セキュリティ レベルは、SNMP メッセージを開示から保護する必要があるかどうか、およびメッセージを認証するかどうか判断します。セキュリティ モデル内のさまざまなセキュリティ レベルは、次のとおりです。
-
noAuthNoPriv:認証または暗号化を実行しないセキュリティ レベル。このレベルは、SNMPv3 ではサポートされていません。
-
authNoPriv:認証は実行するが、暗号化を実行しないセキュリティ レベル。
-
authPriv:認証と暗号化両方を実行するセキュリティ レベル。
SNMPv1、SNMPv2c、および SNMPv3 の 3 つのセキュリティ モデルを使用できます。セキュリティ モデルとセキュリティ レベルの組み合わせにより、SNMP メッセージの処理中に適用されるセキュリティ メカニズムが決まります。
モデル |
レベル |
認証 |
暗号化 |
結果 |
---|---|---|---|---|
v1 |
noAuthNoPriv |
コミュニティ ストリング |
なし |
コミュニティ ストリングの照合を使用して認証します。 |
v2c |
noAuthNoPriv |
コミュニティ ストリング |
なし |
コミュニティ ストリングの照合を使用して認証します。 |
v3 |
authNoPriv |
HMAC-MD5、または HMAC-SHA |
未対応 |
Hash-Based Message Authentication Code(HMAC)メッセージ ダイジェスト 5(MD5)アルゴリズムまたは HMAC Secure Hash Algorithm(SHA)アルゴリズムに基づいて認証します。 |
v3 |
authPriv |
HMAC-MD5、または HMAC-SHA |
DES |
HMAC-MD5 アルゴリズムまたは HMAC-SHA アルゴリズムに基づいて認証します。データ暗号規格(DES)の 56 ビット暗号化、および暗号ブロック連鎖(CBC)DES(DES-56)標準に基づいて認証します。 |
ユーザベースのセキュリティ モデル
SNMPv3 ユーザーベース セキュリティ モデル(USM)は SNMP メッセージレベル セキュリティを参照し、次のサービスを提供します。
-
メッセージの完全性:メッセージが不正な方法で変更または破壊されず、データ シーケンスが悪意なく起こり得る範囲を超えて変更されていないことを保証します。
-
メッセージの発信元の認証:データを受信したユーザーが提示した ID の発信元を確認します。
-
メッセージの機密性:情報が使用不可であること、または不正なユーザ、エンティティ、またはプロセスに開示されないことを保証します。
SNMPv3 は、設定済みユーザによる管理動作のみを許可し、SNMP メッセージを暗号化します。
Cisco NX-OSは、次の 2 つの SNMPv3 認証プロトコルを使用します。
-
HMAC-MD5-96 認証プロトコル
-
HMAC-SHA-96 認証プロトコル
Cisco NX-OS は、SNMPv3 メッセージ暗号化用プライバシー プロトコルの 1 つとして、Advanced Encryption Standard(AES)を使用し、RFC 3826 に準拠します。
priv オプションで、SNMP セキュリティ暗号化方式として、DES または 128 ビット AES 暗号化を選択できます。priv オプションと aes-128 トークンを併用すると、このプライバシー パスワードは 128 ビットの AES キー番号を生成するためのパスワードになります。AES priv パスワードは、8 文字以上の長さにできます。パスフレーズをクリア テキストで指定する場合、最大 64 文字を指定できます。ローカライズド キーを使用する場合は、最大 130 文字を指定できます。
Note |
外部の AAA サーバーを使用して SNMPv3 を使う場合、外部 AAA サーバーのユーザー設定でプライバシー プロトコルに AES を指定する必要があります。 |
CLI および SNMP ユーザの同期
SNMPv3 ユーザ管理は、Access Authentication and Accounting(AAA)サーバ レベルで集中化できます。この中央集中型ユーザ管理により、Cisco NX-OSの SNMP エージェントは AAA サーバのユーザ認証サービスを利用できます。ユーザ認証が検証されると、SNMP PDU の処理が進行します。AAA サーバはユーザ グループ名の格納にも使用されます。SNMP はグループ名を使用して、スイッチでローカルに使用できるアクセス ポリシーまたはロール ポリシーを適用します。
ユーザ グループ、ロール、またはパスワードの設定が変更されると、SNMP と AAA の両方のデータベースが同期化されます。
Cisco NX-OS は、次のようにユーザー設定を同期化します。
-
snmp-server user コマンドで指定された auth パスフレーズは、CLI ユーザーのパスワードになります。
-
username コマンドで指定されたパスワードは、SNMP ユーザーの auth および priv パスフレーズになります。
-
SNMP または CLI を使用してユーザを作成または削除すると、SNMP と CLI の両方でユーザが作成または削除されます。
-
ユーザとロールの対応関係の変更は、SNMP と CLI で同期化されます。
-
ロール変更(CLI からの削除または変更)は、SNMP と同期化されます。
Note |
パスフレーズまたはパスワードをローカライズしたキーおよび暗号形式で設定した場合、Cisco NX-OS はユーザー情報(パスワード、ルールなど)を同期させません。 |
グループベースの SNMP アクセス
Note |
グループは業界全体で使用されている標準的な SNMP 用語なので、SNMP に関する説明では、「ロール」ではなく「グループ」を使用します。 |
SNMP アクセス権は、グループ別に編成されます。SNMP 内の各グループは、CLI を使用する場合のロールに似ています。各グループは 3 つのアクセス権により定義されます。つまり、読み取りアクセス、書き込みアクセス、および通知アクセスです。それぞれのアクセスを、各グループでイネーブルまたはディセーブルに設定できます。
ユーザ名が作成され、ユーザのロールが管理者によって設定され、ユーザがそのロールに追加されていれば、そのユーザはエージェントとの通信を開始できます。