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

FreeBSD Manual Pages

  
 
  

home | help
SNMPD(8)			    Net-SNMP				SNMPD(8)

NAME
     snmpd - daemon to respond to SNMP request packets.

SYNOPSIS
     snmpd [OPTIONS] [LISTENING ADDRESSES]

DESCRIPTION
     snmpd  is an SNMP agent which binds to a port and awaits requests from SNMP
     management software.  Upon  receiving  a  request,  it  processes	the  re-
     quest(s),	collects the requested information and/or performs the requested
     operation(s) and returns the information to the sender.

OPTIONS
     -a      Log the source addresses of incoming requests.

     -A      Append to the log file rather than truncating it.

     -c FILE
	     Read FILE as a configuration file (or  a  comma-separated	list  of
	     configuration  files).   Note that the loaded file will only under-
	     stand snmpd.conf tokens, unless the configuration type is specified
	     in the file as described in the snmp_config man page under  SWITCH-
	     ING CONFIGURATION TYPES IN MID-FILE.

     -C      Do  not  read  any  configuration	files except the ones optionally
	     specified by the -c option.  Note that this behaviour  also  covers
	     the  persistent  configuration  files.   This may result in dynami-
	     cally-assigned values being reset following an agent  restart,  un-
	     less the relevant persistent config files are explicitly loaded us-
	     ing the -c option.

     -d      Dump (in hexadecimal) the sent and received SNMP packets.

     -D[TOKEN[,...]]
	     Turn  on  debugging output for the given TOKEN(s).  Without any to-
	     kens specified, it defaults to printing all the  tokens  (which  is
	     equivalent  to  the  keyword "ALL").  You might want to try ALL for
	     extremely verbose output.	Note: You can not put  a  space  between
	     the -D flag and the listed TOKENs.

     -f      Do not fork() from the calling shell.

     -g GID  Change  the  group  ID  of the snmpd process into GID after opening
	     listening sockets. This overrides the agentgroup configuration file
	     parameter.

     -h, --help
	     Display a brief usage message and then exit.

     -H      Display a list of configuration file directives understood  by  the
	     agent and then exit.

     -I [-]INITLIST
	     Specifies	which modules should (or should not) be initialized when
	     the agent starts up.  If the comma-separated INITLIST  is	preceded
	     with  a  '-', it is the list of modules that should not be started.
	     Otherwise this is the list of  the  only  modules	that  should  be
	     started.

	     To get a list of compiled modules, run the agent with the arguments
	     -Dmib_init -H (assuming debugging support has been compiled in).

     -L[eEfFoOsSnN]
	     Specify  where logging output should be directed (standard error or
	     output, to a file or via syslog).	 See  LOGGING  OPTIONS	in  snm-
	     pcmd(1) for details.

     -m MIBLIST
	     Specifies	a  colon  separated list of MIB modules to load for this
	     application.  This overrides the environment  variable  MIBS.   See
	     snmpcmd(1) for details.

     -M DIRLIST
	     Specifies a colon separated list of directories to search for MIBs.
	     This  overrides  the  environment variable MIBDIRS.  See snmpcmd(1)
	     for details.

     -n NAME
	     Set an alternative application name (which will affect the configu-
	     ration files loaded).  By default this will be snmpd, regardless of
	     the name of the actual binary.

     -p FILE
	     Save the process ID of the daemon in FILE.

     -q      Print simpler output for easier automated parsing.

     -r      Do not require root access to run the daemon.  Specifically, do not
	     exit if files only accessible to root (such as /dev/kmem etc.) can-
	     not be opened.

     -u UID  Change the user ID of the snmpd process  into  UID  (which  can  be
	     given  in	numerical or textual form) after opening listening sock-
	     ets. This overrides the agentuser configuration file parameter.

     -U      Instructs the agent to not remove its pid file (see the -p  option)
	     on  shutdown.  Overrides  the leave_pidfile token in the snmpd.conf
	     file, see snmpd.conf(5).

     -v, --version
	     Print version information for the agent and then exit.

     -V      Symbolically dump SNMP transactions.

     -x ADDRESS
	     Listens for AgentX connections on the specified address rather than
	     the default "/var/agentx/master".	The address can either be a Unix
	     domain socket path, or the address of  a  network	interface.   The
	     format  is  the same as the format of listening addresses described
	     below.

     -X      Run as an AgentX subagent rather than as an SNMP master agent.

     --name="value"
	     Allows one to specify any	token  ("name")  supported  in	the  sn-
	     mpd.conf  file  and sets its value to "value". Overrides the corre-
	     sponding token in the snmpd.conf file. See  snmpd.conf(5)	for  the
	     full list of tokens.

LISTENING ADDRESSES
     By default, snmpd listens for incoming SNMP requests on UDP port 161 on all
     IPv4 interfaces.  However, it is possible to modify this behaviour by spec-
     ifying  one or more listening addresses as arguments to snmpd.  A listening
     address takes the form:

	    [<transport-specifier>:]<transport-address>

     At its simplest, a listening address may consist only of a port number,  in
     which  case  snmpd listens on that UDP port on all IPv4 interfaces.  Other-
     wise, the <transport-address> part of the specification is parsed according
     to the following table:

	 <transport-specifier>	     <transport-address> format

	 udp (default)		     hostname[:port] or IPv4-address[:port]

	 tcp			     hostname[:port] or IPv4-address[:port]

	 unix			     pathname

	 ipx			     [network]:node[/port]

	 aal5pvc or pvc 	     [interface.][VPI.]VCI

	 udp6 or udpv6 or udpipv6    hostname[:port] or IPv6-address[:port]

	 tcp6 or tcpv6 or tcpipv6    hostname[:port] or IPv6-address[:port]

	 ssh			     hostname:port

	 dtlsudp		     hostname:port

     Note that <transport-specifier> strings are case-insensitive so  that,  for
     example,  "tcp"  and  "TCP"  are equivalent.  Here are some examples, along
     with their interpretation:

     127.0.0.1:161	     listen on UDP port 161, but only  on  the	loopback
			     interface.   This	prevents snmpd being queried re-
			     motely.  The   port  specification  ":161"  is  not
			     strictly  necessary  since that is the default SNMP
			     port.

     TCP:1161		     listen on TCP port 1161 on all IPv4 interfaces.

     ipx:/40000 	     listen on IPX port 40000 on all IPX interfaces.

     unix:/tmp/local-agent   listen on the Unix domain socket /tmp/local-agent.

     /tmp/local-agent	     is identical to the previous  specification,  since
			     the  Unix	domain is assumed if the first character
			     of the <transport-address> is '/'.

     PVC:161		     listen on the AAL5 permanent virtual  circuit  with
			     VPI=0  and  VCI=161  (decimal)  on  the  first  ATM
			     adapter in the machine.

     udp6:10161 	     listen on port 10161 on all IPv6 interfaces.

     ssh:127.0.0.1:22	     Allows connections from the snmp subsystem  on  the
			     ssh  server  on port 22.  The details of using SNMP
			     over SSH are defined below.

     dtlsudp:127.0.0.1:9161  Listen for connections over DTLS on UDP port  9161.
			     The  snmp.conf  file must have the serverCert, con-
			     figuration tokens defined.

     Note that not all the transport domains listed above will always be  avail-
     able; for instance, hosts with no IPv6 support will not be able to use udp6
     transport	addresses, and attempts to do so will result in the error "Error
     opening specified endpoint".  Likewise, since AAL5 PVC support is only cur-
     rently available on Linux, it will fail with the same error on other  plat-
     forms.

Transport Specific Notes
     ssh     The  SSH  transport,  on  the  server side, is actually just a unix
	     named pipe that can be connected to via a ssh subsystem  configured
	     in  the  main ssh server.	The pipe location (configurable with the
	     sshtosnmpsocket  token  in   snmp.conf)   is   /var/net-snmp/sshdo-
	     mainsocket.   Packets  should  be submitted to it via the sshtosnmp
	     application, which also sends the user ID as well when starting the
	     connection.  The TSM security model should  be  used  when  packets
	     should process it.

	     The sshtosnmp command knows how to connect to this pipe and talk to
	     it.  It should be configured in the OpenSSH sshd configuration file
	     (which is normally /etc/ssh/sshd_config using the following config-
	     uration line:

		  Subsystem  snmp  /usr/local/bin/sshtosnmp /var/net-snmp/sshdo-
		  mainsocket

	     The sshtosnmp command will need read/write access to the  /var/net-
	     snmp/sshdomainsocket  pipe.   Although  it should be fairly safe to
	     grant access to the average user since it still requires  modifica-
	     tions  to	the ACM settings before the user can perform operations,
	     paranoid administrators may want to make the  /var/net-snmp  direc-
	     tory  accessible only by users in a particular group.  Use the ssh-
	     tosnmpsocketperms snmp.conf configure option  to  set  the  permis-
	     sions, owner and group of the created socket.

	     Access control can be granted to the user "foo" using the following
	     style of simple snmpd.conf settings:

		  rouser -s tsm foo authpriv

	     Note  that "authpriv" is acceptable assuming as SSH protects every-
	     thing that way (assuming you have a non-insane setup).   snmpd  has
	     no  notion  of how SSH has actually protected a packet and thus the
	     snmp agent assumes all packets passed  through  the  SSH  transport
	     have been protected at the authpriv level.

     dtlsudp
	     The  DTLS protocol, which is based off of TLS, requires both client
	     and server certificates to establish the connection  and  authenti-
	     cate both sides.  In order to do this, the client will need to con-
	     figure the snmp.conf file with the clientCert configuration tokens.
	     The  server  will	need  to  configure  the snmp.conf file with the
	     serverCert configuration tokens defined.

	     Access control setup is similar to the ssh transport as the TSM se-
	     curity model should be used to protect the packet.

CONFIGURATION FILES
     snmpd checks for the existence of and parses the following files:

     /usr/local/etc/snmp/snmp.conf
	   Common configuration for the agent and applications. See snmp.conf(5)
	   for details.

     /usr/local/etc/snmp/snmpd.conf

     /usr/local/etc/snmp/snmpd.local.conf
	   Agent-specific configuration.  See snmpd.conf(5) for details.   These
	   files  are optional and may be used to configure access control, trap
	   generation, subagent protocols and much else besides.

	   In addition to these two configuration files in  /usr/local/etc/snmp,
	   the agent will read any files with the names snmpd.conf and snmpd.lo-
	   cal.conf  in a colon separated path specified in the SNMPCONFPATH en-
	   vironment variable.

     /usr/local/share/snmp/mibs/
	   The agent will also load all files in this  directory  as  MIBs.   It
	   will  not,  however,  load any file that begins with a '.' or descend
	   into subdirectories.

SEE ALSO
     (in recommended reading order)

     snmp_config(5), snmp.conf(5), snmpd.conf(5)

V5.9.5.2			   30 Jun 2010				SNMPD(8)

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

home | help