Thursday, March 1, 2012

EMC Ionix: Scanning for SNMPv3

Network Management is as old as The Internet. Various low level protocols and commands such as ICMP, Ping, and Traceroute were created in order to assist in basic debugging. Middle Level protocols such as SNMP were created to help understand toplology, health, and performance, as well as facilitate configuration. EMC offers a management platform, formerly known as SMARTS, which supports SNMPv3, the Internet Standard management protocol.

SNMP - The Standard:
Wikipedia described SNMPv3:

As of 2004 the IETF recognizes Simple Network Management Protocol version 3 as defined by RFC 3411–RFC 3418 (also known as STD0062) as the current standard version of SNMP. The IETF has designated SNMPv3 a full Internet standard, the highest maturity level for an RFC.
Support by EMC:
Systems Management ARTS or SMARTS created a product called InCharge, which was designed around managing networks for large service providers. EMC later purchased the company, to consolidate larger management ambitions.

EMC is now rumored to be experiencing schizophenea in it's product management cycle - exiting the Enterprise market with the decision to abandon UNIX markets such as IBM AIX, and considering an exit from it's Managed Services Market with experimenting to abandon UNIX markets such as Solaris.

With a product assumption, several portfolio name changes, and abandoning one core constitency after another - EMC is appearing to be at a point of crisis.

Service Providers and SNMPv3:
For service providers deciding to risk their fortunes on leaderless vendor, there is one good thing to keep in mind - SMARTS InCharge, or EMC Ionix, or whatever they decide to call the dead-product now a days does support SNMPv3.

To interogate discovered devices, in order to determine SNMP support, the topology dump can be leveraged.

sun9999/user$ sm_tpmgr -s AM-99 --dump-agents
To test an edge device for SNMP V3 capabilities, the a simple get command will almost be thorough.

sun9999/user$ sm_snmp --useif= --snmp=3 --user=${User} --auth=${Auth} --authPass=${AuthPass} --priv=${Priv} --privPass=${PrivPass} get . 2>&1 && echo "Test: Success: ${Node}\n" echo "Test: Failed: ${Node}\n"

MAIN-N-Using interface
SNMP-N-EUSMUSER-[USM]: Unknown User Name
Test: Failed:

MAIN-N-Using interface
Error: authorizationError. = Null
Test: Success: SE_Corp_Banregio_Mty

MAIN-N-Using interface
. = noSuchObject
Test: Success:

MAIN-N-Using interface
. = .
Test: Success:
This script provides a Success or Failed flag, but this does not guarantee the device is fully discoverable.

  • A successful return is not a guarantee of full SNMPv3 usability

  • Authorization errors return a NULL and an error message with a Success flag

  • Permission issues may return "noSuchObject" get result message with a Success flag
A combination of the Success flag with the content result will provide a highly likely assessment of whether the discovered device may be fully SNMPv3 supportable.

No comments:

Post a Comment