Реализация прослушивателя ловушек SNMP v3 не работает для AuthNoPriv в случае использования протоколов MD5 и SHA с исполJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Реализация прослушивателя ловушек SNMP v3 не работает для AuthNoPriv в случае использования протоколов MD5 и SHA с испол

Сообщение Anonymous »

Реализация прослушивателя ловушек

Код: Выделить всё

TransportMapping trapTransport = new DefaultUdpTransportMapping(new UdpAddress("0.0.0.0/"));
snmp = new Snmp(trapTransport);
snmp.addCommandResponder(this::processTrap);
MessageDispatcherImpl messageDispatcher = (MessageDispatcherImpl) snmp.getMessageDispatcher();
messageDispatcher.addAuthenticationFailureListener(this::processFailedTrap);
USM usm = new USM();
SecurityModels.getInstance().addSecurityModel(usm);
SecurityProtocols.getInstance().addPredefinedProtocolSet(SecurityProtocols.SecurityProtocolSet.maxCompatibility);
snmp.listen();
Добавление пользователей usm, как показано ниже

Код: Выделить всё

        // noAuthPriv
OctetString noAuthSecurityName = new OctetString("ADMIN");
byte[] noAuthSecurityEngineID = makeEngineId("some valid value");
UsmUser noAuthUser = new UsmUser(noAuthSecurityName, null, null,
null, null, OctetString.fromByteArray(noAuthSecurityEngineID));
snmp.getUSM().addUser(noAuthUser);

// AuthNoPriv with "MD5"
OctetString MD5SecurityName = new OctetString("ADMIN");
byte[] MD5securityEngineID = makeEngineId("some valid value 1");
UsmUser MD5User = new UsmUser(MD5SecurityName, AuthMD5.ID, new OctetString("ADMINTEST"),
null, null, OctetString.fromByteArray(MD5securityEngineID));
snmp.getUSM().addUser(MD5User);
Я уверен, что протоколы и пароль одинаковы на сетевом устройстве и у пользователя USM, но ошибка authNoPriv становится ниже, работает в случае с noAuthPriv

Код: Выделить всё

Received Failed Trap: 1408, org.snmp4j.asn1.BERInputStream@3b7a6a2a, SnmpConstants.SNMPv3_USM_AUTHENTICATION_FAILURE
Проверено на нескольких сетевых устройствах, похоже, те же конфигурации работают с pysnmp в Python.
Обновление от 01 октября 2024 г.: разница только между pysnmp( длина дайджеста: 12) и SNMP4j (длина дайджеста: 16), которые я нашел, были длиной дайджеста. Может ли это быть причиной ошибки?

Подробнее здесь: https://stackoverflow.com/questions/790 ... se-of-both
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»