◆ SNMPv3の設定 - ビューの設定
SNMPビューを定義することでMIB全体からMIBオブジェクトをフィルタリングして、MIBオブジェクトの
サブセットを定義できます。また、後に設定するSNMPグループごとに定義したビューへのアクセスだけを
許可したり、特定の監視対象のオブジェクト(OID)を含めたり(included)除外(excluded)できます。
◆ SNMPv3 - ビューの設定
(config)# snmp-server view name OID [ include | excluded ]
◆ SNMPv3の設定 - エンジンIDの設定
SNMPエンジンを識別するためのユニークなIDを設定できます。SNMPエンジンIDはSNMPv3 通信において
相手側に通知されます。ローカルを指定しない場合は、デフォルトで自動的に生成されるエンジンIDとなり
その値は show snmp engineIDコマンドによって確認することができます。
◆ SNMPv3 - エンジンIDの設定
(config)# snmp-server engineID [ local engineid-string | remote address engineid-string ]
コマンド引数 |
説明 |
engineid-string |
24文字のIDストリング。後続にゼロが含まれる場合、24文字のID全てを指定する必要はない。
例えば123400000000000000000000というSNMPエンジンIDを設定する場合、実際の設定は
snmp-server engineID local 1234 と入力できる。
|
address |
リモートホスト(SNMPマネージャ)のIPアドレス
|
engineid-string |
リモートホスト(SNMPマネージャ)用のエンジンIDの指定
|
Catalystのマニュアルに次のような記述があります ⇒ 「特定のエージェントのリモートユーザを設定
する前に snmp-server engineIDコマンドを remote オプションとともに使用して、SNMPエンジンID
を設定してください。先にリモートエンジンIDを設定しておかなければコマンドがエラーになります。」
◆ SNMPv3の設定 - SNMPグループの設定
SNMPユーザをSNMPビューにマッピングするSNMPグループを設定します。これにより、SNMPビューに
対してauth、noauth、privなどのセキュリティレベルでアクセスするグループを作成することができます。
◆ SNMPv3 - SNMPグループの設定
(config)# snmp-server group group-name v3 [ auth | noauth | priv ]
[ read readview ] [ write writeview ] [ notify notifyview ] [ access acl-number ]
コマンド引数 |
説明 |
auth | noauth | priv |
noauth:下表のセキュリティレベルの「noAuthNoPriv」が該当。デフォルト値。
auth:下表のセキュリティレベルの「authNoPriv」が該当。MD5とSHAによる認証が可。
priv:下表のセキュリティレベルの「autPriv」が該当。DES による暗号化をイネーブル。
|
readview |
オプション:エージェントの内容を表示できるビューの名前
|
writeview |
オプション:データを入力して、エージェントの内容を表示できるビューの名前
|
notifyview |
オプション:通知、情報、またはトラップを指定するビューの名前 |
acl-number |
オプション:アクセスできる対象を指定したACL番号 |
セキュリティレベル |
認証 |
暗号化 |
結果 |
noAuthNoPriv |
ユーザ名 |
なし |
ユーザ名だけを使用して認証。暗号化なし |
authNoPriv |
MD5 or SHA |
なし |
HMAC-MD5 or HMAC-SHAを使用して認証。暗号化なし |
authPriv |
MD5 or SHA |
DES or AES |
HMAC-MD5 or HMAC-SHAを使用して認証。※1で暗号化 |
※1 次の暗号化レベルを指定可能 ⇒ 「CBC-DES」「3DES」「AES128」「AES192」「AES256」
◆ SNMPv3の設定 - SNMPユーザの設定
先ほど作成したSNMPグループに参加するSNMPユーザを作成します。
◆ SNMPv3 - SNMPグループの設定
(config)# snmp-server user username groupname [ remote address v3 [ encrypted ]
auth [ md5 | sha ] auth-password [ priv [ des | 3des | aes [ 128 | 192 | 256 ] priv-password
コマンド引数 |
説明 |
username |
エージェントに接続するホスト上のユーザ名
|
groupname |
ユーザが対応づけられるグループ名
|
address |
ユーザが所属するリモートSNMPエンティティのホスト名またはIPアドレスを指定
|
encrypted |
パスワードを暗号化表示するように指定 |
md5 | sha |
HMAC-MD5-96(md5)または HMAC-SHA-96(sha)認証レベルを使用。
auth-password でパスワードの文字列を指定。 |
priv [ des | 3des | aes ] |
プライベート(priv)暗号化アルゴリズムとパスワード文字列( priv-password)を指定 |
◆ SNMPv3の設定 - トラップの設定
SNMPv1、SNMPv2cでもトラップの概念があるので、以下の構文はSNMPv3用のコマンドとして抜粋。
◆ トラップの設定
(config)# snmp-server host address [ informs | traps ] [ version 3 [ auth | noauth | priv ] type
コマンド引数 |
説明 |
address |
SNMPマネージャのIPアドレスを指定。DNS解決できるならホスト名を指定してもOK。
|
informs | traps |
通知する方式を選択。指定しない場合(一般的に指定しない)は traps が指定される。
|
auth | noauth | priv |
auth:パケット認証して暗号化しない
noauth:パケット認証も暗号化もしない
priv:パケット認証も暗号化もする
|
type |
オプション:特定のトラップを通知したい場合は通知タイプを指定。デフォルトは全てが通知。 |
◆ トラップの有効化
(config)# snmp-server enable traps notification-types
◆ SNMPv3の設定例
SNMPv3の設定例その1。SNMPマネージャがRO(読み取り権限)で全てのMIBオブジェクトにアクセス
できるようにする設定。ユーザは「CCIE」と定義されて、パスワードは「Cisco123」と定義しています。
Cisco(config) # snmp-server view READVIEW internet included
Cisco(config) # snmp-server view READVIEW iso included
Cisco(config) # snmp-server group AUTHG v3 noauth read READVIEW
Cisco(config) # snmp-server user CCIE AUTHG v3 auth md5 Cisco123
|
SNMPv3の設定例その2。ユーザとリモートホスト(SNMPマネージャ)を関連付け、ユーザがグローバル
コンフィグレーションモードの時にauth(authNoPriv)認証レベルで情報を送信する設定例です。
Cisco(config) # snmp-server engineID remote 192.168.1.101 00000063000100a1c0b4011b
Cisco(config) # snmp-server group AUTHG v3 auth
Cisco(config) # snmp-server user authuser AUTHG remote 192.168.1.101 v3 auth md5 mypassword
Cisco(config) # snmp-server user authuser AUTHG v3 auth md5 mypassword
Cisco(config) # snmp-server host 192.168.1.101 informs version 3 auth authuser config
Cisco(config) # snmp-server enable traps
|
通信監視の要件に「SNMPv3による管理と実装」があり、顧客がSNMPv3による実装が初めての場合には、
ベンダーのNWエンジニアはある程度の作業工数を確保することをお勧めします。以上の解説だけ見ると
実装は簡単なように思えますが、意図した動作をしない場合の問題切り分けはそれなりに時間を要します。
|