Installare un server SNMP
Installazione di un server SNMP su Debian
Versioni compatibili
- Debian Etch 4.0
- Debian Lenny 5.0
Introduzione
SNMP (Simple Network Management) è il protocollo comunemente utilizzato per il monitoraggio di apparati di rete (ad esempio router), di server e di dispositivi come gli UPS.
In Debian il demone che governa questo protocollo si chiama, ovviamente, snmpd
Installazione
Come per quasi tutti i servizi, l'installazione di snmpd è in Debian di una semplicità disarmante:
#apt-get install snmpd snmp
Si noti che insieme al demone vero e proprio (snmpd) abbiamo installato anche un pacchetto (snmp) contenente alcuni tool utili per il debugging della nostra configurazione.
Configurazione del server
Il file di configurazione di snmpd è: /etc/snmp/snmpd.conf. Apriamolo con un editor di testo:
# nano /etc/snmp/snmpd.conf
e apportiamo le seguenti modifiche:
- Sostituite
# sec.name source community com2sec paranoid default public #com2sec readonly default public #com2sec readwrite default private
con
#com2sec paranoid default public com2sec local localhost public com2sec localnet 192.168.0.0/24 public #com2sec readwrite default private
In questo modo abbiamo permesso la connessione al server snmpd da parte di tutti i dispositivi della LAN. Al posto di 192.168.0.0/24 dovrete ovviamente sostituire la configurazione della vostra rete LAN.
- Sostituite
# 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
con
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
- Infine sostituite
# System contact information syslocation Unknown (configure /etc/snmp/snmpd.local.conf) syscontact Root <root@localhost> (configure /etc/snmp/snmpd.local.conf)
con
syslocation Nome_Vosta_Organizzazione syscontact indirizzo_amministratore@vostra.organizzazione
A questo punto un riavvio del demone dovrebbe essere sufficiente:
#/etc/init.d/snmpd restart
Per configurazioni particolari possono essere utili i seguenti howto:
http://www.net-snmp.org/docs/man/snmpd.conf.html http://www.cyberciti.biz/nixcraft/linux/docs/uniqlinuxfeatures/mrtg/snmpd.conf.txt
Test della configurazione
Dato da root, il comando
#snmpwalk localhost -c public -v1
dovrebbe restituirvi qualcosa di simile:
SNMPv2-MIB::sysDescr.0 = STRING: Linux 2.6.18-2-386 #1 Wed Aug 17 09:33:35 UTC 2007 i686 SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10 SNMPv2-MIB::sysUpTime.0 = Timeticks: (656698) 1:49:26.98 SNMPv2-MIB::sysContact.0 = STRING: amministratore@dominio.org SNMPv2-MIB::sysName.0 = STRING: debianserver SNMPv2-MIB::sysLocation.0 = STRING: Organizzazione SNMPv2-MIB::sysORLastChange.0 = Timeticks: (0) 0:00:00.00 SNMPv2-MIB::sysORID.1 = OID: IF-MIB::ifMIB SNMPv2-MIB::sysORID.2 = OID: SNMPv2-MIB::snmpMIB SNMPv2-MIB::sysORID.3 = OID: TCP-MIB::tcpMIB SNMPv2-MIB::sysORID.4 = OID: IP-MIB::ip SNMPv2-MIB::sysORID.5 = OID: UDP-MIB::udpMIB SNMPv2-MIB::sysORID.6 = OID: SNMP-VIEW-BASED-ACM-MIB::vacmBasicGroup SNMPv2-MIB::sysORID.7 = OID: SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance SNMPv2-MIB::sysORID.8 = OID: SNMP-MPD-MIB::snmpMPDCompliance SNMPv2-MIB::sysORID.9 = OID: SNMP-USER-BASED-SM-MIB::usmMIBCompliance
Configurazione dei client
Sul lato client è necessario installare i seguenti pacchetti:
#apt-get install snmp scli tkmib
Quindi occorre modificare il file di configurazione /etc/snmp/snmp.conf come segue:
nano /etc/snmp/snmp.conf
- Sostituite
com2sec paranoid default public #com2sec readonly default public #com2sec readwrite default private
con
#com2sec paranoid default public com2sec readonly 127.0.0.1 public #com2sec readwrite default private
Riavviate il demone:
#/etc/init.d/snmp restart
e testate la configurazione:
#snmpwalk -v 2c -c public indirizzo.ip.del.server system
Dovreste ottenere qualcosa di simile:
SNMPv2-MIB::sysDescr.0 = STRING: Linux sritest 2.4.27-2-386 #1 Wed Aug 17 09:33:35 UTC 2005 i686 SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10 SNMPv2-MIB::sysUpTime.0 = Timeticks: (168871) 0:28:08.71 SNMPv2-MIB::sysContact.0 = STRING: webmaster@debianhelp.co.uk SNMPv2-MIB::sysName.0 = STRING: debiantest SNMPv2-MIB::sysLocation.0 = STRING: maindatacenter SNMPv2-MIB::sysORLastChange.0 = Timeticks: (0) 0:00:00.00 SNMPv2-MIB::sysORID.1 = OID: IF-MIB::ifMIB SNMPv2-MIB::sysORID.2 = OID: SNMPv2-MIB::snmpMIB SNMPv2-MIB::sysORID.3 = OID: TCP-MIB::tcpMIB SNMPv2-MIB::sysORID.4 = OID: IP-MIB::ip SNMPv2-MIB::sysORID.5 = OID: UDP-MIB::udpMIB SNMPv2-MIB::sysORID.6 = OID: SNMP-VIEW-BASED-ACM-MIB::vacmBasicGroup SNMPv2-MIB::sysORID.7 = OID: SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance SNMPv2-MIB::sysORID.8 = OID: SNMP-MPD-MIB::snmpMPDCompliance SNMPv2-MIB::sysORID.9 = OID: SNMP-USER-BASED-SM-MIB::usmMIBCompliance SNMPv2-MIB::sysORDescr.1 = STRING: The MIB module to describe generic objects for network interface sub-layers SNMPv2-MIB::sysORDescr.2 = STRING: The MIB module for SNMPv2 entities SNMPv2-MIB::sysORDescr.3 = STRING: The MIB module for managing TCP implementations SNMPv2-MIB::sysORDescr.4 = STRING: The MIB module for managing IP and ICMP implementations SNMPv2-MIB::sysORDescr.5 = STRING: The MIB module for managing UDP implementations SNMPv2-MIB::sysORDescr.6 = STRING: View-based Access Control Model for SNMP.
.