NAME

SNMP::Info::Layer7::Stormshield - SNMP Interface to Stormshield Network Security appliances

AUTHORS

Rob Woodward

SYNOPSIS

# Let SNMP::Info determine the correct subclass for you.
my $Stormshield = new SNMP::Info(
                         AutoSpecify => 1,
                         Debug       => 1,
                         DestHost    => 'myfirewall',
                         Community   => 'public',
                         Version     => 2
                       )
   or die "Can't connect to DestHost.\n";

my $class      = $Stormshield->class();
print "SNMP::Info determined this device to fall under subclass : $class\n";

DESCRIPTION

Subclass for Stormshield Network Security (SNS) appliances

The module supports both High Availability (HA) and non-HA Stormshield appliances.

- Scalar globals such as serial number, model and OS version are retrieved from STORMSHIELD-PROPERTY-MIB. - Since ENTITY-MIB is not available on the device, a set of e_* methods is provided based on STORMSHIELD-HA-MIB tables to approximate ENTITY-like information for HA nodes.

High Availability (HA) Devices (HA-derived e_* methods)

For HA devices, the module uses the STORMSHIELD-HA-MIB to build ENTITY-like methods:

Serial Number table: snsFwSerial (.1.3.6.1.4.1.11256.1.11.7.1.2)
Model table: snsModel (.1.3.6.1.4.1.11256.1.11.7.1.4)
Version table: snsVersion (.1.3.6.1.4.1.11256.1.11.7.1.5)
HA license table: snsHALicence (.1.3.6.1.4.1.11256.1.11.7.1.6)

Note: While snsNodeIndex exists in the HA MIB, it is MAX-ACCESS not-accessible and cannot be fetched directly; the e_index method uses the row indices of the HA tables (e.g., snsFwSerial) as identity mapping.

Example SNMP walk for model: snmpwalk -v2c -On .1.3.6.1.4.1.11256.1.11.7.1.4 .1.3.6.1.4.1.11256.1.11.7.1.4.0 = STRING: "SN-S-Series-220" .1.3.6.1.4.1.11256.1.11.7.1.4.1 = STRING: "SN-S-Series-220"

Non-HA Devices (Property MIB globals)

The module uses the STORMSHIELD-PROPERTY-MIB for single nodes or the primary cluster node:

Serial Number: snsSerialNumber (.1.3.6.1.4.1.11256.1.18.3)
Model: snsModel (.1.3.6.1.4.1.11256.1.18.1)
Version: snsVersion (.1.3.6.1.4.1.11256.1.18.2)

Example SNMP walk for model: snmpwalk -v2c -On .1.3.6.1.4.1.11256.1.18 .1.3.6.1.4.1.11256.1.18.1.0 = STRING: "SN-S-Series-220"

Inherited Classes

SNMP::Info::Layer7

Required MIBs

Inherited Classes' MIBs

See SNMP::Info::Layer7 for its own MIB requirements.

STORMSHIELD-HA-MIB

Required for High Availability (HA) Stormshield appliances.

STORMSHIELD-PROPERTY-MIB

Required for both single nodes and clusters.

GLOBALS

These are methods that return scalar value from SNMP

$Stormshield->vendor()

Returns 'stormshield'.

$Stormshield->os()

Returns 'SNS'.

$Stormshield->os_ver()

Release extracted from STORMSHIELD-PROPERTY-MIB.

$Stormshield->model()

Model extracted from STORMSHIELD-PROPERTY-MIB.

$Stormshield->serial()

Returns serial number extracted from STORMSHIELD-PROPERTY-MIB.

Globals imported from SNMP::Info::Layer7

See documentation in SNMP::Info::Layer7 for details.

TABLE METHODS

These are methods that return tables of information in the form of a reference to a hash.

$Stormshield->e_index()

Returns an identity mapping of HA node row indices inferred from STORMSHIELD-HA-MIB tables; key = iid, value = iid.

$Stormshield->e_class()

Returns reference to hash: key = iid, value = 'chassis'.

$Stormshield->e_name()

Returns reference to hash: key = iid, value = 'chassis.<iid>'.

$Stormshield->e_vendor()

Returns reference to hash: key = iid, value = 'stormshield'.

$Stormshield->e_descr()

Returns reference to hash: key = iid, value = '<model> <licence> <serial> <version>' assembled from HA tables: snsModel, snsHALicence, snsFwSerial, and snsVersion.

$Stormshield->e_model()

Returns reference to hash: key = iid, value = model (from snsModel).

$Stormshield->e_swver()

Returns reference to hash: key = iid, value = software version (from snsVersion).

$Stormshield->e_serial()

Returns reference to hash: key = iid, value = serial (from snsFwSerial).

Table Methods imported from SNMP::Info::Layer7

See documentation in SNMP::Info::Layer7 for details.