Я разместил это в SuperUser, но понял, что этот вопрос, вероятно, более актуален здесь.
Я пытаюсь проверить время безотказной работы через плагин Nagios check_snmp на ИБП с поддержкой SNMP версии 3.
Я могу выполнить вызов snmpget, указав версию 3 с соответствующими учетными данными, и получить правильный ответ от ИБП, так что я знаю, что он настроен правильно.
Документация плагина nagios check_snmp показывает, что у него есть опции, поддерживающие v3.
Однако в файлах конфигурации Nagios единственные примеры, которые я нашел, показывают "-C public"
Я не могу найти в файлах конфигурации nagios, где указать версию 3 для плагина check_snmp, будь то файл конфигурации хоста, commands.cfg или где-то еще.
Я пробовал заменить "-C public" данными аутентификации версии 3 в файле config .cfg моего хоста, но пока что безуспешно.
Посмотрев на страницу руководства еще раз, поскольку Zoredache предложил, я понял, что случаи флагов параметров различаются между snmpget и check_snmp для имени пользователя и уровня безопасности authPriv.
Пользователь - это строчная буква «u» для snmpget и заглавная «U» для check_snmp, уровень безопасности - «l» и «L» для snmpget / check_snmp соответственно.
Также спецификация протокола идет от -v3 до --protocol = 3
в файле objects / hostservice.cfg я изменил
check_command check_snmp!-C public -o sysUpTime.0
к
check_command check_snmp!--protocol=3 -U [user] -L [noAuthNoPriv|authNoPriv|authPriv] -a [MD5|SHA] -A [password] -x [DES|AES] -X [password] -o sysUpTime.0
и теперь я получаю правильный ответ