Я пытаюсь собрать простые журналы с устройств Cisco, используя netsnmp с SNMP v3.
Я могу заставить сообщения появляться в моем snmptrapd, но мне нужно вручную добавить EngineID, чтобы они говорили. Например, пока я этого не сделаю, я вижу такие сообщения:
usm: no match on engineID (80 00 00 09 03 00 3C 01 02 03 04 05 usm: no match on engineID (80 00 00 09 03 00 3C 01 02 03 04 05 )
Затем мне нужно зайти в /etc/snmp/snmptrapd.conf и вручную добавить движок в новую строку createUser.
Вскоре мне придется добавить около 200 устройств, и потребуется обычная процедура для добавления новых. Есть ли способ исправить эту ситуацию без потери шифрования?
Исходя из вашего описания, автоматизирую процесс. В верхней части сценария или программы, собирающей журналы, заранее запросите устройство snmpEngineID.0 для получения идентификатора Engine ID. Затем проверьте файл /etc/snmp/snmptrapd.conf на предмет идентификатора двигателя. Если идентификатор существует, продолжайте. Если идентификатор не существует, добавьте строку createuser -e 0xEngineID ...
Короткий скрипт на perl или bash подойдет. Дайте мне знать, если у вас возникнут связанные вопросы.