1

在我的代码中,我正在配置 usm 用户并为 SNMP v3 添加用户。我想以一种同时支持以下算法集的方式配置用户。

SHA-1 + AES128、SHA-1 + DES、MD5 + AES128、MD5 + DES

假设同一个 usm 用户能够同时支持这 4 种组合。现在,当我从管理控制台尝试时,我想选择上述 4 的任意组合,并且 SNMP 代理应该可以工作。

注意:我不想添加新的 usm 用户。我希望同一用户同时配置上述 4 种组合。

UsmUser user = new UsmUser(new OctetString(m_usmUser),
                         snmpAuthenticationAlgorithm,
                         snmpAuthenticationPassword,
                         snmpPrivacyAlgorithm,
                         snmpPrivacyPassword);
usm.addUser(user.getSecurityName(), user.getLocalizationEngineID(), user);

而不是上面的,我想使用类似下面的东西。

UsmUser user = new UsmUser(new OctetString(m_usmUser),
                         AuthMD5.ID,
                         snmpAuthenticationPassword,
                         PrivDES.ID,
                         snmpPrivacyPassword);
usm.addUser(user.getSecurityName(), user.getLocalizationEngineID(), user);
user = new UsmUser(new OctetString(m_usmUser),
                         AuthMD5.ID,
                         snmpAuthenticationPassword,
                         PrivAES128.ID,
                         snmpPrivacyPassword);
usm.addUser(user.getSecurityName(), user.getLocalizationEngineID(), user);
user = new UsmUser(new OctetString(m_usmUser),
                         AuthSHA.ID,
                         snmpAuthenticationPassword,
                         PrivAES128.ID,
                         snmpPrivacyPassword);
usm.addUser(user.getSecurityName(), user.getLocalizationEngineID(), user);
user = new UsmUser(new OctetString(m_usmUser),
                         AuthSHA.ID,
                         snmpAuthenticationPassword,
                         PrivDES.ID,
                         snmpPrivacyPassword);
usm.addUser(user.getSecurityName(), user.getLocalizationEngineID(), user);
4

1 回答 1

2

SNMPv3 标准不支持在 RFC 3414 定义的 USM 配置中每个 USM 用户使用多个 auth+priv 组合。此限制是由 usmUserTable 的结构和索引引起的。但是,使用 SNMP4J,您可以为每个代理定义多个 USM 实例,并为每个 USM 实例分配其自己的 usmUserTable 实例,并在其自己的 SNMPv3 上下文中注册每个表实例。

尽管这可行,但在 SNMPv3 用户名(如“myUser.AES128”与“myUser.DES”等)中使用安全协议后缀(或前缀)可能更容易理解和实施。

于 2014-02-02T09:45:03.630 回答