Nagios

帶有 snmpv3 協議的 check_snmp 給出“未知報告消息”錯誤

  • November 18, 2011

我正在嘗試添加一個 nagios 命令以使用 snmpv3 來監視列印機狀態消息。使用 check_snmp 命令時,出現以下錯誤:

外部命令錯誤:snmpget: Unknown Report message

這是我輸入的命令:

./check_snmp -P 3 -H <hostname> -L authPriv -U snmpuser -A snmppassword -X snmppassword -o 1.3.6.1.4.1.11.2.4.3.1.2.0 -C public -d "STRING:" -a MD5

auth key、private key、username 等的這些值在使用 snmpwalk 時都有效。有人可以告訴我該錯誤消息的真正含義嗎?

編輯:看起來 check_snmp 在傳遞給 snmpget 時沒有使用我的 v3 憑據。這是我使用詳細選項的輸入:

./check_snmp -H <hostname> -o 1.3.6.1.2.1.2.2.1.10.1 -C public -m ALL -P 3 -L authPriv -U snmpuser -a MD5 -A snmppassword -x DES -X snmppassword -v

這是輸出:

/usr/bin/snmpget -t 1 -r 5 -m ALL -v 3 [authpriv] <hostname>:161 1.3.6.1.2.1.2.2.1.10.1
External command error: snmpget: Unknown Report message

所以我想現在我的問題是:為什麼 check_snmp 不將所有命令行選項傳遞給 snmpget?

我永遠無法讓 check_snmp 與版本 3 SNMP 一起工作。為了解決我的問題,我根據以下範例創建了自己的外掛,用於 HP 列印機 SNMP 檢查:

http://www.koders.com/c/fid3CAA98A63980B5952800E7C72CDDE8E2BAD3A0B9.aspx

奇怪的是它沒有為你傳遞所有的論點。可能是舊版本的 nagios-plugins?

幸運的是,您可能可以重複使用我剛剛放在一起的東西來解決不同的問題。check_snmp 不遵守您的 smnp.conf 文件。

我編寫了一個 check_snmp.pl 腳本,它的行為與 check_snmp 類似,並與 snmp v3 一起使用,並使用您的 snmp.conf 文件中的值。以下是概要:

http://cormander.com/2011/11/a-nagios-snmp-plugin-that-obeys-snmp-conf/

以及 check_snmp.pl 腳本的直接連結:

http://cormander.com/wp-content/uploads/2011/11/check_snmp.pl_.txt

希望有人覺得這很有用。

引用自:https://serverfault.com/questions/235514