Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SNMPTRAPD.CONF(5)		    Net-SNMP		       SNMPTRAPD.CONF(5)

NAME
     snmptrapd.conf - configuration file for the Net-SNMP notification receiver

DESCRIPTION
     The  Net-SNMP notification receiver (trap daemon) uses one or more configu-
     ration files to control its operation and how incoming  traps  (and  INFORM
     requests)	should	be processed.  This file (snmptrapd.conf) can be located
     in one of several locations, as  described  in  the  snmp_config(5)  manual
     page.

IMPORTANT
     Previously, snmptrapd would accept all incoming notifications, and log them
     automatically  (even  if no explicit configuration was provided).	Starting
     with release 5.3, access control checks will be applied to incoming notifi-
     cations. If snmptrapd is run without  a  suitable	configuration  file  (or
     equivalent access control settings), then such traps WILL NOT be processed.
     See the section ACCESS CONTROL for more details.

     As  with  the agent configuration, the snmptrapd.conf directives can be di-
     vided into four distinct groups.

TRAPD BEHAVIOUR
     snmpTrapdAddr [<transport-specifier>:]<transport-address>[,...]
	    defines a list of listening addresses, on which to receive	incoming
	    SNMP  notifications.  See the section LISTENING ADDRESSES in the sn-
	    mpd(8) manual page for more information about the format of  listen-
	    ing addresses.

	    The  default  behaviour is to listen on UDP port 162 on all IPv4 in-
	    terfaces.

     doNotRetainNotificationLogs yes
	    disables support for the  NOTIFICATION-LOG-MIB.   Normally	the  sn-
	    mptrapd  program  keeps a record of the traps received, which can be
	    retrieved by querying the nlmLogTable  and	nlmLogvariableTable  ta-
	    bles.  This directive can be used to suppress this behaviour.

	    See  the  snmptrapd(8)  manual page and the NOTIFICATION-LOG-MIB for
	    details.

     doNotLogTraps yes
	    disables the logging of notifications altogether.  This is useful if
	    the snmptrapd application  should  only  run  traphandle  hooks  and
	    should not log traps to any location.

     doNotFork yes
	    do not fork from the calling shell.

     pidFile PATH
	    defines  a file in which to store the process ID of the notification
	    receiver.  By default, this ID is not saved.

ACCESS CONTROL
     Starting with release 5.3, it is necessary to explicitly specify who is au-
     thorised to send traps and informs to the notification receiver  (and  what
     types  of processing these are allowed to trigger).  This uses an extension
     of the VACM model, used in the main SNMP agent.

     There are currently three types of processing that can be specified:

	    log    log the details of the notification - either in  a  specified
		   file, to standard output (or stderr), or via syslog (or simi-
		   lar).

	    executepass  the details of the trap to a specified handler program,
		   including embedded perl.

	    net    forward the trap to another notification receiver.

     In the following directives, TYPES will be a (comma-separated) list of  one
     or  more  of  these tokens.  Most commonly, this will typically be log,exe-
     cute,net to cover any style of processing for a particular category of  no-
     tification.  But it is perfectly possible (even desirable) to limit certain
     notification sources to selected processing only.

     authCommunity   TYPES COMMUNITY  [SOURCE [OID | -v VIEW ]]
	    authorises traps (and SNMPv2c INFORM requests)  with  the  specified
	    community  to  trigger  the types of processing listed.  By default,
	    this  will	allow  any  notification  using  this  community  to  be
	    processed.	The SOURCE field can be used to specify that the config-
	    uration  should only apply to notifications received from particular
	    sources - see snmpd.conf(5) for more details.

     authUser	TYPES [-s MODEL] USER  [LEVEL [OID | -v VIEW ]]
	    authorises SNMPv3 notifications with the specified user  to  trigger
	    the  types	of  processing listed.	By default, this will accept au-
	    thenticated requests.  (authNoPriv or authPriv). The LEVEL field can
	    be used to allow unauthenticated notifications (noauth), or  to  re-
	    quire encryption (priv), just as for the SNMP agent.

	    With  both	of  these  directives, the OID (or -v VIEW) field can be
	    used to retrict this configuration to the processing  of  particular
	    notifications.

	    Note:  Unlike  the	VACM processing described in RFC 3415, this view
		   is only matched against the snmpTrapOID value of the incoming
		   notification.  It is not applied to the payload varbinds held
		   within that notification.

     authGroup	TYPES [-s MODEL] GROUP	[LEVEL [OID | -v VIEW ]]

     authAccess TYPES [-s MODEL] GROUP VIEW  [LEVEL [CONTEXT]]

     setAccess GROUP CONTEXT MODEL LEVEL PREFIX VIEW TYPES
	    authorise notifications in the specified GROUP (configured using the
	    group directive) to trigger the types of processing listed.  See sn-
	    mpd.conf(5) for more details.

     createUser [-e  ENGINEID] username
     (MD5|SHA|SHA-512|SHA-384|SHA-256|SHA-224) authpassphrase [DES|AES]
	    See the snmpd.conf(5) manual page for a description of how to create
	    SNMPv3 users.  This is roughly the same, but the file  name  changes
	    to snmptrapd.conf from snmpd.conf.

     disableAuthorization yes
	    will disable the above access control checks, and revert to the pre-
	    vious behaviour of accepting all incoming notifications.

LOGGING
     format1 FORMAT

     format2 FORMAT
	    specify the format used to display SNMPv1 TRAPs and SNMPv2 notifica-
	    tions  respectively.  Note that SNMPv2c and SNMPv3 both use the same
	    SNMPv2 PDU format.

     format DESTINATION FORMAT
	    specify the format used for different destinations.  DESTINATION  is
	    one  of:  print,  print1, print2, syslog, syslog1, syslog2, execute,
	    execute1, execute2.  print1  is  used  for	printing  SNMPv1  traps,
	    print2  is	for SNMPv2.  print is used for both versions.  syslog is
	    similarly used when sending traps to syslog, and execute  used  when
	    sending traps to a program such as traptoemail(1).

	    The default formats are
	    format  print1  %.4y-%.2m-%.2l %.2h:%.2j:%.2k %B [%b] (via %A [%a]):
	    %N\n\t%W Trap (%q) Uptime: %#T\n%v\n
	    format print2 %.4y-%.2m-%.2l %.2h:%.2j:%.2k %B [%b]:\n%v\n
	    format syslog1 %a: %W Trap (%q) Uptime: %#T%#v\n
	    format syslog2 %B [%b]: Trap %#v\n
	    format execute %B\n%b\n%V\n%v\n

	    See snmptrapd(8) for the layout characters available.

     ignoreAuthFailure yes
	    instructs the receiver to ignore authenticationFailure traps.

	    Note:  This currently only affects the  logging  of  such  notifica-
		   tions.   authenticationFailure  traps will still be passed to
		   trap handler scripts, and forwarded to other notification re-
		   ceivers.  This behaviour should not be relied on,  as  it  is
		   likely to change in future versions.

     logOption string
	    specifies where notifications should be logged - to standard output,
	    standard  error,  a  specified  file or via syslog.  See the section
	    LOGGING OPTIONS in the snmpcmd(1) manual page for details.

     outputOption string
	    specifies various characteristics  of  how	OIDs  and  other  values
	    should  be	displayed.   See  the section OUTPUT OPTIONS in the snm-
	    pcmd(1) manual page for details.

MySQL Logging
     There are two configuration variables that work together  to  control  when
     queued  traps  are  logged  to the MySQL database. A non-zero value must be
     specified for sqlSaveInterval to enable MySQL logging.

     sqlMaxQueue max
	    specifies the maximum number of traps to queue before a forced flush
	    to the MySQL database.

     sqlSaveInterval seconds
	    specified the number of seconds between periodic queue  flushes.   A
	    value of 0 for will disable MySQL logging.

NOTIFICATION PROCESSING
     As well as logging incoming notifications, they can also be forwarded on to
     another  notification  receiver,  or passed to an external program for spe-
     cialised processing.

     traphandle OID|default PROGRAM [ARGS ...]
	    invokes the specified program (with the given arguments) whenever  a
	    notification  is  received	that matches the OID token.  For SNMPv2c
	    and SNMPv3 notifications, this token will be  compared  against  the
	    snmpTrapOID  value	taken  from the notification.  For SNMPv1 traps,
	    the generic and specific trap values and the enterprise OID will  be
	    converted into the equivalent OID (following RFC 2576).

	    Typically,	the OID token will be the name (or numeric OID) of a NO-
	    TIFICATION-TYPE object, and the specified program  will  be  invoked
	    for  notifications	that match this OID exactly.  However this token
	    also supports a simple form of wildcard suffixing.	By appending the
	    character '*' to the OID token, the corresponding  program	will  be
	    invoked  for  any  notification  based  within subtree rooted at the
	    specified OID.  For example, an OID  token	of  .1.3.6.1.4.1*  would
	    match  any enterprise specific notification (including the specified
	    OID itself).  An OID token of .1.3.6.1.4.1.*  would  would	work  in
	    much the same way, but would not match this exact OID - just notifi-
	    cations  that  lay	strictly below this root.  Note that this syntax
	    does not support full regular expressions or wildcards - an OID  to-
	    ken of the form oid.*.subids is not valid.

	    If	the  OID field is the token default then the program will be in-
	    voked for any  notification  not  matching	another  (OID  specific)
	    traphandle entry.

     Details  of the notification are fed to the program via its standard input.
     Note that this will always use the SNMPv2-style notification  format,  with
     SNMPv1  traps  being  converted as per RFC 2576, before being passed to the
     program.  The input format is, if you use the default set	by  the  "format
     execute %B\n%b\n%V\n%v\n", one entry per line:

	    HOSTNAME
		   The	name  of  the host that sent the notification, as deter-
		   mined by gethostbyaddr(3).

	    ADDRESSThe transport address, like
		   "[UDP: [172.16.10.12]:23456->[10.150.0.8]]"

	    VARBINDS
		   A list of variable bindings describing the  contents  of  the
		   notification, one per line.	The first token on each line (up
		   until a space) is the OID of the varind, and the remainder of
		   the	line is its value.  The format of both of these are con-
		   trolled by the outputOption directive (or similar  configura-
		   tion).

		   The	first  OID should always be SNMPv2-MIB::sysUpTime.0, and
		   the second should be SNMPv2-MIB::snmpTrapOID.0.  The  remain-
		   ing	lines will contain the payload varbind list.  For SNMPv1
		   traps,  the	final  OID  will  be  SNMPv2-MIB::snmpTrapEnter-
		   prise.0.

	    Example:
		   A  traptoemail script has been included in the Net-SNMP pack-
		   age that can be used within a traphandle directive:

		   traphandle default  /usr/bin/perl  /usr/local/bin/traptoemail
		   -s	mysmtp.somewhere.com   -f  admin@somewhere.com	me@some-
		   where.com

     forward OID|default DESTINATION
	    forwards notifications that match the specified OID to  another  re-
	    ceiver listening on DESTINATION.  The interpretation of OID (and de-
	    fault) is the same as for the traphandle directive).

	    See  the section LISTENING ADDRESSES in the snmpd(8) manual page for
	    more information about the format of listening addresses.

     addForwarderInfo 1|yes|true|0|no|false

	    Each time a trap is forwarded, add an OID with the IP address of the
	    system from which the trap has been received. The following  OID  is
	    added: .1.3.6.1.6.3.18.1.3.x (SNMP-COMMUNITY-MIB::snmpTrapAddress.x)
	    where x is the lowest index >= 0 that does not yet occur in the trap
	    payload.  The  end recipient (i.e. the monitoring system) can deter-
	    mine the IPv4 address of the original  sender  by  looking	for  the
	    varbind  with OID snmpTrapAddress.0. If that OID is not populated it
	    means that the trap has been sent directly or in other words that it
	    has not been forwarded.

NOTES
     o	    The daemon blocks while executing the  traphandle  commands.   (This
	    should  be	fixed in the future with an appropriate signal catch and
	    wait() combination).

     o	    All directives listed with a value of "yes" actually accept a  range
	    of	boolean  values.  These will accept any of 1, yes or true to en-
	    able the corresponding behaviour, or any of 0, no or false	to  dis-
	    able  it.	The default in each case is for the feature to be turned
	    off, so these directives are typically only used to enable	the  ap-
	    propriate behaviour.

FILES
     /usr/local/etc/snmp/snmptrapd.conf

SEE ALSO
     snmp_config(5), snmptrapd(8), syslog(8), traptoemail(1), variables(5), net-
     snmp_config_api(3).

V5.9.5.2			   13 Mar 2014		       SNMPTRAPD.CONF(5)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=snmptrapd.conf&sektion=5&manpath=FreeBSD+Ports+15.1.quarterly>

home | help