Description:
With the following Add-in script you can configure SNMP (SNMPv1, SNMPv2 or SNMPv3) on Access Points using LCOS LX.
List of used variables:
Variable | Description |
---|---|
Add-in code:
/** config.setScalarByOid( "13.2.9.37" , "6" ); //enable SNMPv2 and SNMPv3 // Do not change the following functions ! // function to create a SNMP Community var createSnmpCommunity = function ( Name , SecurityName , Status ) { var SNMPCommunity = config.getTableByOid( "13.2.9.27" ); var SNMPCommunityEntry = SNMPCommunity .createNewRow(); SNMPCommunityEntry .setByOid( "1" , Name ); SNMPCommunityEntry .setByOid( "3" , SecurityName ); SNMPCommunityEntry .setByOid( "8" , Status ); // Active (1), Inactive (2) SNMPCommunity .addOrMerge( SNMPCommunityEntry ); } // function to create a SNMP Group var createSnmpGroup = function ( SecurityModel , SecurityName , GroupName , Status ) { var SNMPGroup = config.getTableByOid( "13.2.9.28" ); var SNMPGroupEntry = SNMPGroup .createNewRow(); SNMPGroupEntry .setByOid( "1" , SecurityModel ); // Any (0), SNMPv1 (1), SNMPv2_C (2), SNMPv3_USM (3) SNMPGroupEntry .setByOid( "2" , SecurityName ); SNMPGroupEntry .setByOid( "3" , GroupName ); SNMPGroupEntry .setByOid( "5" , Status ); // Active (1), Inactive (2) SNMPGroup .addOrMerge( SNMPGroupEntry ); } // function to create a SNMP Views var createSnmpViews = function ( ViewsName , OidSubtree , Type , Status ) { var SNMPViews = config.getTableByOid( "13.2.9.30" ); var SNMPViewsEntry = SNMPViews .createNewRow(); SNMPViewsEntry .setByOid( "1" , ViewsName ); SNMPViewsEntry .setByOid( "3" , OidSubtree ); SNMPViewsEntry .setByOid( "4" , Type ); // Included (1), Excluded (2) SNMPViewsEntry .setByOid( "6" , Status ); // Active (1), Inactive (2) SNMPViews .addOrMerge( SNMPViewsEntry ); } // function to create a SNMP Accesses var createSnmpAccesses = function ( GroupName , SecurityModel , MinSecurityLevel , ReadViewName , WriteViewName , NotifyViewName , Status ) { var SNMPAccesses = config.getTableByOid( "13.2.9.29" ); var SNMPAccessesEntry = SNMPAccesses .createNewRow(); SNMPAccessesEntry .setByOid( "1" , GroupName ); SNMPAccessesEntry .setByOid( "3" , SecurityModel ); // Any (0), SNMPv1 (1), SNMPv2_C (2), SNMPv3_USM (3) SNMPAccessesEntry .setByOid( "10" , MinSecurityLevel ); // NoAuthNoPriv (0), AuthNoPriv (1), AuthPriv (3) SNMPAccessesEntry .setByOid( "5" , ReadViewName ); SNMPAccessesEntry .setByOid( "6" , WriteViewName ); SNMPAccessesEntry .setByOid( "7" , NotifyViewName ); SNMPAccessesEntry .setByOid( "8" , Status ); // Active (1), Inactive (2) SNMPAccesses .addOrMerge( SNMPAccessesEntry ); } // function to create a SNMP User var createSnmpUser = function ( UserName , AuthenticationProtocol , AuthenticationPasswordType , AuthenticationPassword , PrivacyProtocol , PrivacyPasswordType , PrivacyPassword , Status ) { var SNMPUseres = config.getTableByOid( "13.2.9.32" ); var SNMPUserEntry = SNMPUser .createNewRow(); SNMPUserEntry .setByOid( "2" , UserName ); SNMPUserEntry .setByOid( "5" , AuthenticationProtocol ); // None (1), HMAC-MD5 (2), HMAC-SHA (3), HMAC-SHA224 (4), HMAC-SHA256 (5), HMAC-SHA384 (6), HMAC-SHA512 (7) SNMPUserEntry .setByOid( "14" , AuthenticationPasswordType ); // Plaintext (1), Masterkey (2) SNMPUserEntry .setByOid( "6" , AuthenticationPassword ); SNMPUserEntry .setByOid( "8" , PrivacyProtocol ); // None (1), DES (2), AES128 (3), AES192 (20), AES256 (21) SNMPUserEntry .setByOid( "15" , PrivacyPasswordType ); // Plaintext (1), Masterkey (2) SNMPUserEntry .setByOid( "9" , PrivacyPassword ); SNMPUserEntry .setByOid( "13" , Status ); // Active (1), Inactive (2) SNMPUser .addOrMerge( SNMPUserEntry ); } // function to create a SNMP Target Adresses var createSnmpTargetAdresses = function ( Name , TransportAddress , ParameterName , Status ) { var SNMPTargetAdresses = config.getTableByOid( "13.2.9.34" ); var SNMPTargetAdressesEntry = SNMPTargetAdresses .createNewRow(); SNMPTargetAdressesEntry .setByOid( "1" , Name ); SNMPTargetAdressesEntry .setByOid( "3" , TransportAddress ); SNMPTargetAdressesEntry .setByOid( "7" , ParameterName ); SNMPTargetAdressesEntry .setByOid( "9" , Status ); // Active (1), Inactive (2) SNMPTargetAdresses .addOrMerge( SNMPTargetAdressesEntry ); } // function to create a SNMP Target Params var createSnmpTargetParams = function ( Name , MessageProcessingModel , SecurityModel , SecurityName , SecurityLevel , Status ) { var SNMPTargetParams = config.getTableByOid( "13.2.9.35" ); var SNMPTargetParamsEntry = SNMPTargetParams .createNewRow(); SNMPTargetParamsEntry .setByOid( "1" , Name ); SNMPTargetParamsEntry .setByOid( "2" , MessageProcessingModel ); // SNMPv1 (0), SNMPv2_C (1), SNMPv3 (3) SNMPTargetParamsEntry .setByOid( "3" , SecurityModel ); // Any (0), SNMPv1 (1), SNMPv2_C (2), SNMPv3_USM (3) SNMPTargetParamsEntry .setByOid( "4" , SecurityName ); SNMPTargetParamsEntry .setByOid( "5" , SecurityLevel ); // NoAuthNoPriv (0), AuthNoPriv (1), AuthPriv (3) SNMPTargetParamsEntry .setByOid( "7" , Status ); // Active (1), Inactive (2) SNMPTargetParams .addOrMerge( SNMPTargetParamsEntry ); } // After this command you can call the functions and fill them with data createSnmpCommunity( "Name" , "SecurityName" , "Status" ); createSnmpGroup( "SecurityModel" , "SecurityName" , "GroupName" , "Status" ); createSnmpViews( "ViewsName" , "OidSubtree" , "Type" , "Status" ); createSnmpAccesses( "GroupName" , "SecurityModel" , "MinSecurityLevel" , "ReadViewName" , "WriteViewName" , "NotifyViewName" , "Status" ); createSnmpUser( "UserName" , "AuthenticationProtocol" , "AuthenticationPasswordType" , "AuthenticationPassword" , "PrivacyProtocol" , "PrivacyPasswordType" , "PrivacyPassword" , "Status" ); createSnmpTargetAdresses( "Name" , "TransportAddress" , "ParameterName" , "Status" ); createSnmpTargetParams( "Name" , "MessageProcessingModel" , "SecurityModel" , "SecurityName" , "SecurityLevel" , "Status" ); }; |
---|
Addin as JSON file: