Код: Выделить всё
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();
Код: Выделить всё
// 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);
Код: Выделить всё
Received Failed Trap: 1408, org.snmp4j.asn1.BERInputStream@3b7a6a2a, SnmpConstants.SNMPv3_USM_AUTHENTICATION_FAILURE
Подробнее здесь: https://stackoverflow.com/questions/790 ... se-of-both