SNMP コミュニティの設定
基本構文
SNMPコミュニティは、SNMPエージェントへのアクセスを制御するためのパスワードのようなものです。
Switch(config)#snmp-server community string [ view view-name] [ ro | rw ] [ access-list-number]
| コマンド | 内容 |
|---|---|
| string | パスワードのように機能し、SNMP プロトコルへのアクセスを許可する文字列を指定します。 |
| view | コミュニティがアクセスできるビュー レコードを指定します。 |
| ro | rw | 読み取り専用 (ro ) または読み取り/書き込み ( rw ) を指定します。 |
| access-list-number | 通信を許可するSNMPマネージャを指定するために標準アクセス リストを入力します。 |
コミュニティ設定例
R1(config)#snmp-server community public RO
R1(config)#snmp-server community private RW
(SNMPv3)インターフェースMIBオブジェクト(OID 1.3.6.1.2.1.2)へのアクセスを許可するビューを作成して、publicコミュニティがアクセスできるMIBオブジェクトをlimitedViewに制限する設定
R1(config)#snmp-server view limitedView 1.3.6.1.2.1.2 included
R1(config)#snmp-server community public view limitedView RO
SNMP トラップの通知設定
基本構文
指定されたホストにトラップまたはインフォームを送信します。
Switch(config)#snmp-server host host-addr [ traps | informs ] [ version { 1 | 2c | 3 { auth | noauth | priv } } ] community-string [ notification-type]
| コマンド | 内容 |
|---|---|
| host-addr | ホスト (ターゲット受信者) の名前またはインターネット アドレスを指定します。 |
| traps | ホストに SNMP トラップを送信するには、 トラップ(デフォルト) を指定します。 |
| informs | ホストに SNMP 通知を送信するには、 informsを指定します。 |
| 1 | 2c | 3 | SNMP バージョン ( 1 、 2c 、または 3 ) を指定します。SNMPv1 は、informs をサポートしていません。 バージョン 3 の場合は、認証レベル auth 、 noauth 、または priv を選択します。 |
SNMPv2cを使用したトラップ送信の設定の設定例
192.168.1.100: SNMPトラップを送信するホストのIPアドレスです。ここではNMSのIPアドレスを指定します。version 2c: SNMPのバージョンを指定しています。ここではSNMPv2cを使用します。public: コミュニティ文字列です。NMSとデバイスが一致するコミュニティ文字列を使用する必要があります。
R1(config)#snmp-server host 192.168.1.100 version 2c public
SNMPv3を使用したトラップ送信の設定例
192.168.1.101: SNMPトラップを送信するホストのIPアドレスです。version 3 priv: SNMPv3を使用し、privオプションで暗号化されたトラップを送信する設定です。MyUser: SNMPv3ユーザー名を指定します。このユーザーは事前にsnmp-server userコマンドで設定されている必要があります。
R1(config)#snmp-server host 192.168.1.101 version 3 priv MyUser
インフォーム(通知)を送信する設定例
informs: トラップではなくインフォームメッセージを送信する設定です。インフォームはトラップと異なり、NMSからの確認応答を受信するため、確実に通知が届くことが保証されます。version 2c: SNMPv2cを使用してインフォームメッセージを送信します。public: コミュニティ文字列です。
R1(config)#snmp-server host 192.168.1.103 informs version 2c public
SNMPトラップを有効にする設定
Switch(config)#snmp-server enable traps notification-types
すべてのトラップを有効にする設定例
デバイスがサポートしているすべてのトラップを有効にします。
R1(config)#snmp-server enable traps
特定のトラップを有効にする設定例
cpu threshold: CPU使用率が設定されたしきい値を超えた場合にトラップを送信します。
R1(config)#snmp-server enable traps cpu threshold
SNMPtrapに関するオプション設定
基本構文
トラップ メッセージの IP アドレスを提供する送信元インターフェイスを指定します
Switch(config)#snmp-server trap-source interface-id
各トラップ ホストのメッセージ キューの長さを設定します。範囲は 1 ~ 1000 で、デフォルトは 10 です。
Switch(config)#snmp-server queue-length length
トラップ メッセージを再送信する頻度を定義します。範囲は 1 ~ 1000 で、デフォルトは 30 秒です。
Switch(config)#snmp-server trap-timeout seconds
SNMPtrapに関するオプション設定例
- SNMPトラップの送信元インターフェースを
GigabitEthernet1に設定。 - SNMPトラップメッセージを送信する際のキューの長さ(トラップをバッファリングできる最大数)を100に設定。
- SNMPトラップの送信タイムアウト時間を100に設定。
R1(config)#snmp-server trap-source GigabitEthernet 1
R1(config)#snmp-server queue-length 100
R1(config)#snmp-server trap-timeout 100
(SNMPv3)エンジンIDの設定
基本構文
SNMP のローカル コピーまたはリモート コピーの名前を設定します。
Switch(config)#snmp-server engineID { local engineid-string | remote ip-address [ udp-port port-number] engineid-string}
| コマンド | 内容 |
|---|---|
| engineid -string | SNMP のコピーの名前を持つ 24 文字の ID 文字列です。 |
| remote | SNMP のリモート コピーを含むデバイスの IP アドレスと、リモート デバイス上のオプションのユーザー データグラム プロトコル (UDP) ポートを指定します。デフォルトは 162 です。 |
エンジンIDの設定例
SNMPv3で使用するエンジンIDの指定を指定しています。SNMPエンジンIDは、SNMPv3通信でデバイスを一意に識別するためのIDです。
R1(config)#snmp-server engineID local 80000009030000AABBCCDDEEFF
(SNMPv3)SNMP グループの設定
リモート デバイスに新しい SNMP グループを構成します。
Switch(config)#snmp-server group group-name { v1 | v2c | v3 { auth | noauth | priv } } [ read readview] [ write writeview] [ notify notifyview] [ access access-list]
| コマンド | 内容 |
|---|---|
| group-name | グループの名前を指定します。 |
| v1 | 可能なセキュリティ モデルの中で最も安全性が低いモデルです。 |
| v2c | 2 番目に安全性の低いモデルです。 |
| v3 | 最も安全な v3では、次のいずれかの認証レベルを選択する必要があります。 auth —Message Digest 5 (MD5) および Secure Hash Algorithm (SHA) パケット認証を有効にします。 noauth —noAuthNoPriv セキュリティ レベルを有効にします。 priv —データ暗号化標準 (DES) パケット暗号化を有効にします。 |
| read readview | エージェントの内容のみを表示できるビューの名前を表す文字列 (64 文字以下) を read readviewに入力します。 |
| write writeview | データを入力し、エージェントの内容を構成するビューの名前となる文字列 (64 文字以下) を write writeviewに入力します。 |
| notify notifyview | 通知、情報、またはトラップを指定するビューの名前を表す文字列 (64 文字以下) を、 notifynotifyviewに入力します。 |
| access access-list | アクセス リストの名前となる文字列 (64 文字以下) とともに access access-listを入力します。 |
SNMPグループの設定例
以下2つのビューを作成します。
MyReadView: 読み取りアクセスを許可するビュー。isoから始まる全てのMIBオブジェクトにアクセスできます。MyWriteView: 書き込みアクセスを許可するビュー。こちらもisoから始まる全てのMIBオブジェクトにアクセスできます。
次にSNMPv3グループを作成します。
MyGroup: グループ名です。このグループに属するユーザーは、SNMPv3を使用します。v3 auth: グループが使用するセキュリティレベルです。authは認証のみを行い、暗号化はしません(暗号化を行う場合はprivを使用します)。read MyReadView:MyReadViewビューへの読み取りアクセスを許可します。write MyWriteView:MyWriteViewビューへの書き込みアクセスを許可します。
R1(config)#snmp-server view MyReadView iso included
R1(config)#snmp-server view MyWriteView iso included
R1(config)#snmp-server group MyGroup v3 auth read MyReadView write MyWriteView
(SNMPv3)SNMP ユーザーの設定
SNMP グループに新しいユーザーを追加します。
Switch(config)#snmp-server user username group-name { remote host [ udp-port port] } { v1 [ access access-list] | v2c [ access access-list] | v3 [ encrypted ] [ access access-list] [ auth { md5 | sha } auth-password] } [ priv { des | 3des | aes { 128 | 192 | 256 } } priv-password]
| コマンド | 内容 |
|---|---|
| username | エージェントに接続するホスト上のユーザーの名前 |
| group-name | ユーザーが関連付けられているグループの名前 |
| remote host [ udp-port port] | ユーザーが属するリモート SNMP エンティティと、そのエンティティのホスト名または IP アドレス、およびオプションの UDP ポート番号を指定するには、 remote と入力します 。 |
| v1 | v2c | v3 | SNMP バージョン番号 ( v1 、 v2c 、または v3 ) を入力します。 v3 を入力すると、次の追加オプションが表示されます。 |
| コマンド | 内容 |
|---|---|
| encrypted | パスワードが暗号化された形式で表示されることを指定します。 |
| auth | HMAC-MD5-96 ( md5 ) または HMAC-SHA-96 ( sha ) 認証レベルのいずれかを設定します。 |
| コマンド | 内容 |
|---|---|
| priv | ユーザーベースのセキュリティ モデル (USM) を指定します。 |
| des | 56 ビット DES アルゴリズムの使用を指定します。 |
| 3des | 168 ビット DES アルゴリズムの使用を指定します。 |
| aes | DES アルゴリズムの使用を指定します。128 ビット、192 ビット、または 256 ビットの暗号化のいずれかを選択する必要があります。 |
SNMPユーザの設定例
auth: ユーザー認証を行うことを指定します。sha: SHA(Secure Hash Algorithm)を使用して認証を行うことを指定しています。SHAは、MD5よりもセキュアなハッシュアルゴリズムです。MyAuthPassword: ユーザー認証のためのパスワードです。このパスワードはSHAアルゴリズムを使ってハッシュ化され、認証に使用されます。priv: プライバシー(暗号化)を有効にすることを指定します。aes 128: AES(Advanced Encryption Standard)アルゴリズムを使用し、128ビットの暗号化を行うことを指定しています。AESは強力な暗号化方式であり、データの機密性を保護します。MyPrivPassword: SNMPメッセージを暗号化するためのパスワードです。このパスワードを使用してSNMPメッセージが暗号化され、送信されます。
R1(config)#snmp-server user MyUser MyGroup v3 auth sha MyAuthPassword priv aes 128 MyPrivPassword
エージェントの連絡先と場所の情報を設定
システムの連絡先文字列を設定します。
Switch(config)#snmp-server contact text
システムの場所の文字列を設定します。
Switch(config)#snmp-server location text
エージェントの連絡先と場所の情報の設定例
R1(config)#snmp-server location “Data Center”
R1(config)#snmp-server contact “admin@example.com”