Я развернул OpenNMS через образы докера и у меня работает опрос SNMPv3, но я не смог получить прерывания или сообщения SNMPv3.
trapd-configuration.xml:
<?xml version="1.0"?>
<trapd-configuration snmp-trap-port="162" new-suspect-on-trap="true">
<snmpv3-user
security-name="trapuser"
security-level="3"
auth-passphrase="authsecret"
auth-protocol="SHA"
privacy-passphrase="privsecret"
privacy-protocol="AES"/>
</trapd-configuration>
Если я запускаю следующее с другого хоста, который опрашивается OpenNMS через SNMPv3:
snmptrap -Dusm -v 3 -l authPriv -u trapuser -a SHA -A authsecret -x AES -X privsecret <opennms-host-ip> 42 coldStart.0
OpenNMS не генерирует никаких событий.В trapd.log я вижу следующее предупреждение:
2018-04-26 09:26:33,364 WARN [DefaultUDPTransportMapping_0.0.0.0/162] o.s.MessageDispatcherImpl: statusInfo=1.3.6.1.6.3.15.1.1.3.0 = 0, status=1404
Из того, что я могу сказать, это относится к неизвестному имени пользователя.
Аналогичным образом не работает и информация, и я получаюто же самое предупреждение в файле trapd.log и аналогичное предупреждение на стороне отправителя.Если я запускаю tcpdump, я вижу, как он извлекает идентификатор удаленного engineID из opennms.
snmpinform -Dusm -v 3 -l authPriv -u trapuser -a SHA -A authsecret -x AES -X privsecret <opennms-host-ip> 42 coldStart.0
registered debug token usm, 1
usm: potentially bootstrapping the USM table from session data
usm: getting user
usm: USM processing has begun (offset 39)
usm: getting user
usm: Failed to find engine data.
usm: USM processing completed.
usm: USM processing begun...
usm: USM processing completed.
usm: potentially bootstrapping the USM table from session data
usm: no flag defined... continuing
usm: user exists? x=(nil)
usm: Building user trapuser...
usm: USM processing has begun (offset 80)
usm: getting user trapuser
usm: match on user trapuser
usm: Encryption successful.
usm: USM processing completed.
usm: USM processing begun...
usm: match on user trapuser
usm: USM processing completed.
snmpinform: Unknown user name
Есть идеи, что я делаю неправильно?