PDA

View Full Version : How do I configure my snmpd.conf on Debian/Ubuntu for Cacti monitoring?


Artyom
11-06-2008, 01:28 PM
After installing net-snmpd using apt-get (apt-get install snmpd), you need to edit two files:

/etc/default/snmpd
/etc/snmp/snmpd.conf


In the /etc/default/snmpd you need to make sure you have the following two lines:

SNMPDRUN=yes
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid'

In the /etc/snmp/snmpd.conf you need to make sure you have the following lines configured:

# sec.name source community
#com2sec paranoid default public
#com2sec local localhost public
#com2sec localNet 10.0.0.34 public
com2sec readonly CactiIP mycommunity
#com2sec readwrite default private


Please replace CactiIP and mycommunity with your correct values. Make sure to comment out the rest of the com2sec lines.

#group MyROSystem v1 local
#group MyROSystem v2c local
#group MyROSystem usm local
#group MyROGroup v1 localnet
#group MyROGroup v2c localnet
#group MyROGroup usm localnet
group MyRWGroup v1 local
#group MyRWGroup v2c local
#group MyRWGroup usm local
group MyROGroup v1 readonly
#group myROGroup v2c readonly
#group myROGroup usm readonly

The most important part here is to use the correct snmp version you use to monitor via your Cacti instance. In this case, we use version 1 (v1). It's also important to note that you need to use the same sec.name as you used in your com2sec line. In our case, it's readonly. Comment out the unneeded lines as well.

# incl/excl subtree mask
view all included .1 80
#view system included .iso.org.dod.internet.mgmt.mib-2.system


The above two lines should already be there. You just need to comment out the second line.

After this is done, save this file and start up snmpd. You should be all set.

NOTE: Make sure that on the monitored server, you open up incoming udp port 161 as well as add your main Cacti server's IP to the /etc/hosts.allow file.

Artyom
10-23-2010, 10:53 AM
Try this as well if the above does not work: http://faq.apnaserver.com/afmviewfaq.aspx?faqid=10 1

1.- Install snmpd (SNMP Server)
root@shoutcast:~# apt-get install snmpd

2.- Configure SNMPD by editing snmpd file

Verify:
# snmpd control (yes means start daemon).
SNMPDRUN=yes

Check this in the /etc/default/snmpd file:

a.-To listen on localhost only
# snmpd options (use syslog, close stdin/out/err).
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'

b.-Or to listen on all interfaces
# snmpd options (use syslog, close stdin/out/err).
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid'

3.- Edit snmpd.conf to customize SNMP authorization
wmunguiam@server:/etc/snmp$ sudo cp snmpd.conf snmpd.conf-initial
wmunguiam@server:/etc/snmp$ vim snmpd.conf

a.- Change from:
# sec.name source community
com2sec paranoid default public
#com2sec readonly default public
#com2sec readwrite default private

To:
#com2sec paranoid default public
com2sec local localhost n1o2c3
com2sec localnet 192.168.1.0 /24 n1o2c3
#com2sec paranoid default public
#com2sec readonly default public
#com2sec readwrite default private

b.- And security name groups from:
# sec.model sec.name
group MyROSystem v1 paranoid
group MyROSystem v2c paranoid
group MyROSystem usm paranoid
group MyROGroup v1 readonly
group MyROGroup v2c readonly
group MyROGroup usm readonly
group MyRWGroup v1 readwrite
group MyRWGroup v2c readwrite
group MyRWGroup usm readwrite

to:
group MyROSystem v1 local
group MyROSystem v2c local
group MyROSystem usm local
group MyROGroup v1 localnet
group MyROGroup v2c localnet
group MyROGroup usm localnet
group MyRWGroup v1 local
group MyRWGroup v2c local
group MyRWGroup usm local

From:
# incl/excl subtree mask
view all included .1 80
view system included .1.3.6.1.2.1.1
#view system included .iso.org.dod.internet.mgmt.mib-2.system

To:
# incl/excl subtree mask
#view all included .1 80
view system included .1.3.6.1.2.1.1 80
#view system included .iso.org.dod.internet.mgmt.mib-2.system

c.- Finally from:
syslocation Unknown (configure /etc/snmp/snmpd.local.conf)
syscontact Root (configure /etc/snmp/snmpd.local.conf)

to:
syslocation Datacenter India
syscontact admin@guru.in

4.-Restart snmpd service
root@shoutcast:~# /etc/init.d/snmpd restart

5.-Verify
root@shoutcast:~# snmpwalk localhost -c public -v1
Timeout: No Response from localhost
root@shoutcast:~# snmpwalk -v 1 -c n1o2c3 localhost .1.3.6.1.2
root@shoutcast:~# snmpwalk localhost -c n1o2c3 -v1
SNMPv2-MIB::sysDescr.0 = STRING: Linux server 2.6.27-9-server #1 SMP Thu Nov 20 22:56:07 UTC 2008 x86_64
SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (4354) 0:00:43.54
SNMPv2-MIB::sysContact.0 = STRING: admin@guru.in
SNMPv2-MIB::sysName.0 = STRING: server
SNMPv2-MIB::sysLocation.0 = STRING: Datacenter ITUS
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (1) 0:00:00.01
SNMPv2-MIB::sysORID.1 = OID: SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance
SNMPv2-MIB::sysORID.2 = OID: SNMP-MPD-MIB::snmpMPDCompliance
SNMPv2-MIB::sysORID.3 = OID: SNMP-USER-BASED-SM-MIB::usmMIBCompliance
SNMPv2-MIB::sysORID.4 = OID: SNMPv2-MIB::snmpMIB
SNMPv2-MIB::sysORID.5 = OID: TCP-MIB::tcpMIB
SNMPv2-MIB::sysORID.6 = OID: IP-MIB::ip
SNMPv2-MIB::sysORID.7 = OID: UDP-MIB::udpMIB
SNMPv2-MIB::sysORID.8 = OID: SNMP-VIEW-BASED-ACM-MIB::vacmBasicGroup
SNMPv2-MIB::sysORDescr.1 = STRING: The SNMP Management Architecture MIB.
SNMPv2-MIB::sysORDescr.2 = STRING: The MIB for Message Processing and Dispatching.
SNMPv2-MIB::sysORDescr.3 = STRING: The management information definitions for the SNMP User-based Security Model.
SNMPv2-MIB::sysORDescr.4 = STRING: The MIB module for SNMPv2 entities
SNMPv2-MIB::sysORDescr.5 = STRING: The MIB module for managing TCP implementations
SNMPv2-MIB::sysORDescr.6 = STRING: The MIB module for managing IP and ICMP implementations
SNMPv2-MIB::sysORDescr.7 = STRING: The MIB module for managing UDP implementations
SNMPv2-MIB::sysORDescr.8 = STRING: View-based Access Control Model for SNMP.
SNMPv2-MIB::sysORUpTime.1 = Timeticks: (1) 0:00:00.01
SNMPv2-MIB::sysORUpTime.2 = Timeticks: (1) 0:00:00.01
SNMPv2-MIB::sysORUpTime.3 = Timeticks: (1) 0:00:00.01
SNMPv2-MIB::sysORUpTime.4 = Timeticks: (1) 0:00:00.01
SNMPv2-MIB::sysORUpTime.5 = Timeticks: (1) 0:00:00.01
SNMPv2-MIB::sysORUpTime.6 = Timeticks: (1) 0:00:00.01
SNMPv2-MIB::sysORUpTime.7 = Timeticks: (1) 0:00:00.01
SNMPv2-MIB::sysORUpTime.8 = Timeticks: (1) 0:00:00.01
End of MIB

Change the community and source IP accordingly.

Artyom
11-09-2010, 06:29 PM
If the above ways do not work, you can simply create a new snmpd.conf file and put the following in:

com2sec ayk default yourcommunity
group aykGroup v1 ayk
group aykGroup v2c ayk
view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.25.1.1
view systemview included .1 80
access aykGroup "" any noauth exact systemview none none

Replace aykgroup and ayk with your values.