![snmpwalkはSNMP v3では動作しません](https://rvso.com/image/632730/snmpwalk%E3%81%AFSNMP%20v3%E3%81%A7%E3%81%AF%E5%8B%95%E4%BD%9C%E3%81%97%E3%81%BE%E3%81%9B%E3%82%93.png)
当社には、長年にわたり snmpv2 経由で Nagios を使用して監視してきた Cisco スイッチがあります。最近、監査チームにより、すべてのネットワーク デバイスを snmpv3 に移行するよう強制されました。
Cisco のエンジニアが来てスイッチに snmpv3 を設定しましたが、その後 snmpwalk が動作しなくなりました。
snmpwalk を試みると、次のエラーが発生します。
[root@nagios libexec]# snmpwalk -u snmprouser -A gs1snmmp -a MD5 -X DES -X gs1snmmp -l authPriv 192.168.13.11 -v3
SNMPv2-SMI::mib-2 = No more variables left in this MIB View (It is past the end of the MIB tree)
上記の資格情報は正しいのですが、間違っている場合は次のエラーがスローされます。
[root@nagios libexec]# snmpwalk -u snmprouser -A gs11snmp -a MD5 -X DES -X gs1snmmp -l authPriv 192.168.13.11 -v3
snmpwalk: Authentication failure (incorrect password, community or key)
稼働時間を取得しようとすると:
[root@nagios libexec]# snmpwalk -u snmprouser -A gs1snmmp -a MD5 -X DES -X gs1snmmp -l authPriv 192.168.13.11 -v3 1.3.6.1.2.1.1.3.0
DISMAN-EVENT-MIB::sysUpTimeInstance = No more variables left in this MIB View (It is past the end of the MIB tree)
また:
[root@nagios ~]# snmpwalk -v3 -u snmprouser -A gs1snmmp -a MD5 -X DES -X gs1snmmp -l authPriv 192.168.13.11 mib-2.interfaces
IF-MIB::interfaces = No more variables left in this MIB View (It is past the end of the MIB tree)
答え1
Linux と Ruby を使用して書いたコードの一部:
def snmp_cmd(cmd)
`#{cmd} -Oq -v3 -u #{@user} -l authpriv -a MD5 \
-A #{@auth} -x DES -X #{@priv} #{@name} #{@oid}`
end
oid が '1' の Linux ホストに対して実行すると、mib 全体が生成されます。完了までに長い時間がかかるため、なぜこれを行う必要があるのかわかりません。このスニペットは HP スイッチと Windows ホストでも機能するため、問題は 'Cisco 中心' である可能性があります (oid=1 の部分ではありません)。
クエリを特定の項目に絞り込むこともできます。
答え2
問題は確かにスイッチの SNMP 設定にあったようです。別の Cisco エンジニアが来て、問題を解決してくれました。Linux 側の問題だと思い込んで、2 週間も無駄にしてしまっただけです。:(