Observium_CE/mibs/media5/MX-CONFIG-FILE-FETCHING-MIB

570 lines
26 KiB
Plaintext

-- ****************************************************************************
-- ****************************************************************************
--
-- Copyright(c) 2003-2005 Mediatrix Telecom, Inc.
-- Copyright(c) 2010 Media5 Corporation ("Media5")
--
-- NOTICE:
-- This document contains information that is confidential and proprietary to
-- Media5.
--
-- Media5 reserves all rights to this document as well as to the Intellectual
-- Property of the document and the technology and know-how that it includes
-- and represents.
--
-- This publication cannot be reproduced, neither in whole nor in part, in any
-- form whatsoever without prior written approval by Media5.
--
-- Media5 reserves the right to revise this publication and make changes at
-- any time and without the obligation to notify any person and/or entity of
-- such revisions and/or changes.
--
-- ****************************************************************************
-- ****************************************************************************
MX-CONFIG-FILE-FETCHING-MIB
DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
OBJECT-TYPE,
Unsigned32,
Integer32
FROM SNMPv2-SMI
OBJECT-GROUP,
MODULE-COMPLIANCE
FROM SNMPv2-CONF
MxIpHostName,
MxIpConfigSource,
MxIpPort,
MxEnableState,
MxIpSelectConfigSource,
MxIpDhcpSiteSpecificCode
FROM MX-TC
ipAddressStatus,
ipAddressConfig,
mediatrixConfig
FROM MX-SMI;
configFileFetchingMIB MODULE-IDENTITY
LAST-UPDATED "201012150000Z"
ORGANIZATION "Mediatrix Telecom, Inc."
CONTACT-INFO "Mediatrix Telecom, Inc.
4229, Garlock Street
Sherbrooke (Quebec)
Canada
Phone: (819) 829-8749
"
DESCRIPTION "This MIB describes the parameters to configure to fetch
configuration files. The unit is the initiator of the transfer session."
-- ************************************************************************
-- Revision history
-- ************************************************************************
REVISION "201012150000Z"
DESCRIPTION "Added the configFileAutoUpdateTimeRange variable.
configFileAutoUpdateTimeOfDay is now deprecated."
REVISION "200603060000Z"
DESCRIPTION "Removed 'seconds' as a selectable time unit for the
configFileAutoUpdateTimeUnit variable."
REVISION "200504250000Z"
DESCRIPTION "Added the HTTPS option in configFileTransferProtocol."
REVISION "200404270000Z"
DESCRIPTION "Updated the configFileAutoUpdateTimeUnit syntax and description.
Updated the configFileFetchingFileName description.
Added configFileFetchingSpecificFileName, configFilePrivacyEnable,
configFilePrivacyGenericSecret and configFilePrivacySpecificSecret."
REVISION "200403100000Z"
DESCRIPTION "Updated the configFileAutoUpdateOnRestartEnable and
configFileAutoUpdatePeriodicEnable descriptions."
REVISION "200402120000Z"
DESCRIPTION "Updated the configFileFetchingFileName description.
Added configFileTransferProtocol, configFileTransferUsername,
configFileTransferPassword, configFileAutoUpdateOnRestartEnable,
configFileAutoUpdatePeriodicEnable, configFileAutoUpdateTimeUnit,
configFileAutoUpdatePeriod and configFileAutoUpdateTimeOfDay.
Removed reference to TFTP server."
REVISION "200311140000Z"
DESCRIPTION "Creation"
::= { mediatrixConfig 11 }
configFileFetchingMIBObjects OBJECT IDENTIFIER ::= { configFileFetchingMIB 50 }
configFileFetchingConformance OBJECT IDENTIFIER ::= { configFileFetchingMIB 100 }
-- Add the configuration file fetching general parameters
configFileFetchingFileName OBJECT-TYPE
SYNTAX OCTET STRING (SIZE(0..63))
MAX-ACCESS read-write
STATUS current
DESCRIPTION "The name of the generic configuration file fetched by the unit
(see sysConfigDownloadConfigFile). This file should be used to
update a large number of units with the same configuration.
If this field is empty, no generic configuration is fetched.
Note that when both generic and specific configuration files
are downloaded, settings from the specific file always override
the settings from the generic file."
DEFVAL { "" }
::= { configFileFetchingMIBObjects 50 }
configFileFetchingSpecificFileName OBJECT-TYPE
SYNTAX OCTET STRING (SIZE(0..63))
MAX-ACCESS read-write
STATUS current
DESCRIPTION "The name of the specific configuration file fetched by the unit
(see sysConfigDownloadConfigFile). This file should be used to
update the configuration of a single unit.
This field may contain macros that are substituted by actual
values at the moment of fetching the configuration file.
Supported macros are:
%mac% - the mac address of the unit
%% - the character '%'
Note: When the character '%' is not part of a macro, it is not
replaced.
If this field is empty (after macro substitution), no specific
configuration file is fetched.
Note that when both generic and specific configuration files are
downloaded, settings from the specific file always override the
settings from the generic file."
DEFVAL { "%mac%.cfg" }
::= { configFileFetchingMIBObjects 60 }
configFileFetchingFileLocation OBJECT-TYPE
SYNTAX OCTET STRING (SIZE(0..63))
MAX-ACCESS read-write
STATUS current
DESCRIPTION "The path of the configuration files (configFileFetchingFileName)
location. The path is relative to the root of the transfer server
(configFileFetchingHost).
Use '/' to separate subdirectories."
DEFVAL { "" }
::= { configFileFetchingMIBObjects 100 }
configFileTransfer OBJECT IDENTIFIER ::= { configFileFetchingMIBObjects 150 }
configFileTransferProtocol OBJECT-TYPE
SYNTAX INTEGER {
tftp(0),
http(1),
https(2)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION "The protocol to use for transferring the configuration files.
tftp: Trivial File Transfer Protocol
http: Hypertext Transfer Protocol
https: Hypertext Transfer Protocol over Transport Layer Security (HTTP over TLS)
This option requires that the appropriate security certificate be installed on the unit.
Furthermore, because HTTPS relies on the system clock for server authentication, the
SNTP client (see sntpMIB) must be enabled and properly configured.
Please refer to the documentation shipped with your device for more details."
DEFVAL { tftp }
::= { configFileTransfer 50 }
configFileTransferUsername OBJECT-TYPE
SYNTAX OCTET STRING (SIZE(0..63))
MAX-ACCESS read-write
STATUS current
DESCRIPTION "The user name to use for authentification when transferring the configuration files.
Only applies when using HTTP or HTTPS as the transfer protocol."
DEFVAL { "" }
::= { configFileTransfer 100 }
configFileTransferPassword OBJECT-TYPE
SYNTAX OCTET STRING (SIZE(0..63))
MAX-ACCESS read-write
STATUS current
DESCRIPTION "The password to use for authentification when transferring the configuration files.
Only applies when using HTTP or HTTPS as the transfer protocol."
DEFVAL { "" }
::= { configFileTransfer 150 }
configFileAutomaticUpdate OBJECT IDENTIFIER ::= { configFileFetchingMIBObjects 200 }
configFileAutoUpdateOnRestartEnable OBJECT-TYPE
SYNTAX MxEnableState
MAX-ACCESS read-write
STATUS current
DESCRIPTION "Enables/Disables the automatic update of the unit configuration on restart.
disable: The unit configuration is not automatically updated at each restart.
enable : If sysConfigDownloadConfigFile is set to 'automaticInitiateFileDownload',
the unit configuration is updated with fetched configuration files at
each restart. The unit is automatically restarted after a successful
unit configuration update. The update is only performed if at least one
parameter value defined in the fetched configuration files is different
from the actual unit configuration."
DEFVAL { enable }
::= { configFileAutomaticUpdate 50 }
configFileAutoUpdatePeriodicEnable OBJECT-TYPE
SYNTAX MxEnableState
MAX-ACCESS read-write
STATUS current
DESCRIPTION "Enables/Disables the periodic update of the unit configuration.
disable: The unit configuration is not periodically updated.
enable : If sysConfigDownloadConfigFile is set to 'automaticInitiateFileDownload',
the unit configuration is periodically updated with fetched configuration
files. The unit is automatically restarted after a successful unit
configuration update. The update is only performed if at least one parameter
value defined in the fetched configuration files is different from the actual
unit configuration."
DEFVAL { disable }
::= { configFileAutomaticUpdate 100 }
configFileAutoUpdateTimeUnit OBJECT-TYPE
SYNTAX INTEGER {
hours(0),
days(1),
minutes(20)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION "The time base for periodic unit configuration updates.
Modification to this setting resets the update timer.
minutes: The unit configuration is updated every x minutes.
hours : The unit configuration is updated every x hours.
days : The unit configuration is updated every x days.
Note that x is defined by configFileAutoUpdatePeriod."
DEFVAL { days }
::= { configFileAutomaticUpdate 150 }
configFileAutoUpdatePeriod OBJECT-TYPE
SYNTAX Unsigned32 (1..48)
MAX-ACCESS read-write
STATUS current
DESCRIPTION "The period at which the configuration files are automatically fetched
by the unit in order to update the unit configuration.
Modification to this setting resets the update timer.
This value is expressed in units defined by configFileAutoUpdateTimeUnit."
DEFVAL { 1 }
::= { configFileAutomaticUpdate 200 }
configFileAutoUpdateTimeOfDay OBJECT-TYPE
SYNTAX Integer32 (-1| 0..23)
MAX-ACCESS read-write
STATUS deprecated
DESCRIPTION "This object is deprecated. It is recommended to use the
variable configFileAutoUpdateTimeRange because it has precedence
over this variable.
The time of the day, based on sntpTimeZoneString, when the unit periodically
fetches the configuration files in order to update the unit configuration.
The configuration files are fetched at the first occurrence of this value
and thereafter with a period defined by configFileAutoUpdatePeriod. Let's say
for instance the automatic unit configuration update is set with the time of
day at 14h00 and the update period at every 2 days. If the automatic update
is enabled before 14h00, the first update will take place the same day at 14h00,
then the second update two days later at the same hour, and so on.
Note that the SNTP server needs to be enabled (see sntpEnable).
Modification to this setting resets the update timer.
-1: The time of the day at which the unit first fetches the configuration files
is randomly selected.
Only applies when configFileAutoUpdateTimeUnit is set to 'days'."
DEFVAL { -1 }
::= { configFileAutomaticUpdate 250 }
configFileAutoUpdateTimeRange OBJECT-TYPE
SYNTAX OCTET STRING (SIZE(0..24))
MAX-ACCESS read-write
STATUS current
DESCRIPTION "The time of the day, based on sntpTimeZoneString, when the unit periodically
fetches the configuration files in order to update the unit configuration.
If a time range is specified, the unit will fetch the configuration files
at a random time within the interval specified.
The format should be one of the following:
hh[:mm[:ss]]
hh[:mm[:ss]] - hh[:mm[:ss]]
Where:
hh: Hours.
mm: Minutes.
ss: Seconds.
The configuration files are fetched at the first occurrence of this value
and thereafter with a period defined by configFileAutoUpdatePeriod. Let's say
for instance the automatic unit configuration update is set with the time of
day at 14h00 and the update period at every 2 days. If the automatic update
is enabled before 14h00, the first update will take place the same day at 14h00,
then the second update two days later at the same hour, and so on.
If the time range is set to '14:00 - 15:00' and the automatic unit configuration update
is enabled within those hours, the first update will take place the following
day. This means that a range of '00:00:00 - 23:59:59' will always take place
the next day.
Note that the SNTP server needs to be enabled (see sntpEnable).
Modification to this setting resets the update timer.
It only applies when configFileAutoUpdateTimeUnit is set to 'days'."
DEFVAL { "" }
::= { configFileAutomaticUpdate 300 }
configFilePrivacy OBJECT IDENTIFIER ::= { configFileFetchingMIBObjects 250 }
configFilePrivacyEnable OBJECT-TYPE
SYNTAX MxEnableState
MAX-ACCESS read-write
STATUS current
DESCRIPTION "Enables/Disables the decryption of the configuration files.
enable : The configuration files are decrypted by the unit.
disable : The configuration file are not decrypted by the unit.
When enabled, the configuration files must be encrypted with keys
matching the secrets set in the variables configFilePrivacyGenericSecret
and configFilePrivacySpecificSecret."
DEFVAL { disable }
::= { configFilePrivacy 50 }
configFilePrivacyGenericSecret OBJECT-TYPE
SYNTAX OCTET STRING (SIZE(0..128))
MAX-ACCESS read-write
STATUS current
DESCRIPTION "The secret key used to decrypt the generic configuration file.
The key is encoded in hexadecimal notation, meaning only characters
in the range 0-9,A-F can be used. Each character encodes 4 bits of
the key. If too many bits are supplied for a given cipher algorithm,
the key is truncated. If not enough bits are provided, the key is padded
with zeros.
For example, a 32 bits key could look like: A36CB299.
This key must match the key used for encryption of the generic
configuration file in order for the settings to be applied.
The generic configuration file is decrypted only if configFilePrivacyEnable
is enabled and this value is not empty"
DEFVAL { "" }
::= { configFilePrivacy 100 }
configFilePrivacySpecificSecret OBJECT-TYPE
SYNTAX OCTET STRING (SIZE(0..128))
MAX-ACCESS read-write
STATUS current
DESCRIPTION "The secret key used to decrypt the specific configuration file.
The key is encoded in hexadecimal notation, meaning only characters
in the range 0-9,A-F can be used. Each character encodes 4 bits of
the key. If too many bits are supplied for a given cipher algorithm,
the key is truncated. If not enough bits are provided, the key is padded
with zeros.
For example, a 32 bits key could look like: A36CB299.
This key must match the key used for encryption of the specific
configuration file in order for the settings to be applied.
The specific configuration file is decrypted only if configFilePrivacyEnable
is enabled and this value is not empty"
DEFVAL { "" }
::= { configFilePrivacy 150 }
-- Add the configFileFetching ip addresses specifics parameters
ipAddressStatusConfigFileFetching OBJECT IDENTIFIER ::= { ipAddressStatus 9 }
ipAddressConfigFileFetching OBJECT IDENTIFIER ::= { ipAddressConfig 9 }
-- Add the Status information
configFileFetchingConfigSource OBJECT-TYPE
SYNTAX MxIpConfigSource
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Indicates the source used for the provisioning of
the transfer server MIB objects. This server is used
by the unit when fetching configuration files."
DEFVAL { dhcp }
::= { ipAddressStatusConfigFileFetching 50 }
configFileFetchingHost OBJECT-TYPE
SYNTAX MxIpHostName
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Transfer server IP address or domain name used when
the unit is fetching configuration files."
DEFVAL { "192.168.0.10" }
::= { ipAddressStatusConfigFileFetching 100 }
configFileFetchingPort OBJECT-TYPE
SYNTAX MxIpPort
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Transfer server IP port number used when the unit
is fetching configuration files."
DEFVAL { 69 }
::= { ipAddressStatusConfigFileFetching 150 }
-- Add the configuration information
configFileFetchingSelectConfigSource OBJECT-TYPE
SYNTAX MxIpSelectConfigSource
MAX-ACCESS read-write
STATUS current
DESCRIPTION "The source to use for the provisioning of the transfer server MIB objects.
This server is used by the unit when fetching configuration files."
DEFVAL { dhcp }
::= { ipAddressConfigFileFetching 50 }
ipAddressConfigFileFetchingStatic OBJECT IDENTIFIER ::= { ipAddressConfigFileFetching 100 }
-- Add the static parameters
configFileFetchingStaticHost OBJECT-TYPE
SYNTAX MxIpHostName
MAX-ACCESS read-write
STATUS current
DESCRIPTION "Static transfer server IP address or domain name
to use when fetching configuration files."
DEFVAL { "192.168.0.10" }
::= { ipAddressConfigFileFetchingStatic 50 }
configFileFetchingStaticPort OBJECT-TYPE
SYNTAX MxIpPort
MAX-ACCESS read-write
STATUS current
DESCRIPTION "Static transfer server IP port number to use
when fetching configuration files."
DEFVAL { 69 }
::= { ipAddressConfigFileFetchingStatic 100 }
ipAddressConfigFileFetchingDhcp OBJECT IDENTIFIER ::= { ipAddressConfigFileFetching 150 }
-- Add the DHCP parameters
configFileFetchingDhcpSiteSpecificCode OBJECT-TYPE
SYNTAX MxIpDhcpSiteSpecificCode
MAX-ACCESS read-write
STATUS current
DESCRIPTION "DHCP transfer server site specific code to use
when fetching configuration files.
If set to 0, use vendor-specific code #201."
DEFVAL { 0 }
::= { ipAddressConfigFileFetchingDhcp 50 }
-- ************************************************************************
-- Conformance information
-- ************************************************************************
configFileFetchingCompliances OBJECT IDENTIFIER ::= { configFileFetchingConformance 50 }
configFileFetchingBasicComplVer1 MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Basic configuration file fetching requirements."
MODULE -- This Module
MANDATORY-GROUPS {
configFileFetchingBasicGroupVer1,
configFileTransferGroupVer1,
configFileAutomaticUpdateGroupVer1,
configFilePrivacyGroupVer1,
configFileFetchingTransferServerGroupVer1
}
::= { configFileFetchingCompliances 50 }
-- ************************************************************************
-- MIB variable grouping
-- ************************************************************************
configFileFetchingGroups OBJECT IDENTIFIER ::= { configFileFetchingConformance 100 }
configFileFetchingBasicGroupVer1 OBJECT-GROUP
OBJECTS {
configFileFetchingFileName,
configFileFetchingSpecificFileName,
configFileFetchingFileLocation
}
STATUS current
DESCRIPTION
"This group holds the necessary objects to initiate a configuration file
download where the unit is the initiator of the transfer session."
::= { configFileFetchingGroups 50 }
configFileTransferGroupVer1 OBJECT-GROUP
OBJECTS {
configFileTransferProtocol,
configFileTransferUsername,
configFileTransferPassword
}
STATUS current
DESCRIPTION
"This group holds the necessary objects that define the transfer of the
configuration file fetching."
::= { configFileFetchingGroups 65 }
configFileAutomaticUpdateGroupVer1 OBJECT-GROUP
OBJECTS {
configFileAutoUpdateOnRestartEnable,
configFileAutoUpdatePeriodicEnable,
configFileAutoUpdateTimeUnit,
configFileAutoUpdatePeriod,
configFileAutoUpdateTimeOfDay,
configFileAutoUpdateTimeRange
}
STATUS current
DESCRIPTION
"This group holds the necessary objects that define the automatic configuration
update following the fetching of a configuration file."
::= { configFileFetchingGroups 85 }
configFilePrivacyGroupVer1 OBJECT-GROUP
OBJECTS {
configFilePrivacyEnable,
configFilePrivacyGenericSecret,
configFilePrivacySpecificSecret
}
STATUS current
DESCRIPTION
"This group holds the necessary objects that define the privacy of the
fetching of a configuration file."
::= { configFileFetchingGroups 105 }
configFileFetchingTransferServerGroupVer1 OBJECT-GROUP
OBJECTS {
configFileFetchingConfigSource,
configFileFetchingHost,
configFileFetchingPort,
configFileFetchingSelectConfigSource,
configFileFetchingStaticHost,
configFileFetchingStaticPort,
configFileFetchingDhcpSiteSpecificCode
}
STATUS current
DESCRIPTION
"This group holds the necessary objects that define the transfer server
used for the configuration file fetching."
::= { configFileFetchingGroups 100 }
END