Snmp

De Linuxmemo.

(Différences entre les versions)
(LCA)
(LCA)
Ligne 55 : Ligne 55 :
##Ceci définit les droits d'accès du groupe.
##Ceci définit les droits d'accès du groupe.
LEVEL est soit "noauth, auth, or priv".
LEVEL est soit "noauth, auth, or priv".
-
PREFX specifies how CONTEXT should be matched against the context of the incoming request, either exact or prefix.
+
PREFX spécifie comment CONTEXTE doit être adapté par rapport au contexte de la requête entrante, soit "exact or prefix".
-
READ, WRITE and NOTIFY specifies the view to be used for GET*, SET and TRAP/INFORM requests (althought the NOTIFY view is not currently used). For v1 or v2c access, LEVEL will need to be noauth.  
+
READ, WRITE and NOTIFY specifies the view to be used for GET*, SET and TRAP/INFORM requests (although the NOTIFY view is not currently used).
 +
For v1 or v2c access, LEVEL will need to be noauth.  
  #access GROUP CONTEXT {any|v1|v2c|usm|tsm|ksm} LEVEL  PREFX  READ    WRITE  NOTIFY
  #access GROUP CONTEXT {any|v1|v2c|usm|tsm|ksm} LEVEL  PREFX  READ    WRITE  NOTIFY
  access cust1 ""         any         noauth exact all none none
  access cust1 ""         any         noauth exact all none none

Version du 10 juin 2012 à 17:00

Sommaire

Le client

  • graphique:

tkmib

~/.snmp/tkmibrc
  • Ireasoning.com mibbrowser free

http://www.ireasoning.com/downloadmibbrowserfree.php

  • console configuration:
/etc/snmp/snmp.conf
#mibs ALL
mibs $HOME/.snmp/mibs/hpicfBasic.mib:/var/lib/mibs/ietf/SNMPv2-MIB
mibdirs /var/lib/mibs/iana:/var/lib/mibs/ietf

Le serveur

configuration:

Le fichier de configuration du serveur est /etc/snmp/snmpd.conf

Les directives:

LCA

  1. Classique (minimum) v1 et v2c
rocommunity COMMUNITY [SOURCE [OID]]
rwcommunity COMMUNITY [SOURCE [OID]]

COMMUNITY est le nom de communauté SOURCE une adresse IP ou de réseau OID restreint l'accès (à cette communauté) pour tout ce qui est en dessous de l'OID.

ou bien

  1. View-Based Access Control Model (VACM) as defined in RFC 2575 v1 et v2c
    1. Cette directive spécifie le mappage à partir d'une paire "source/communauté" à un nom de la sécurité.
#com2sec [-Cn CONTEXT] NAME     SOURCE        COMMUNITY
com2sec                mynagios 192.168.0.88  public
    1. Cette directive définit le mappage entre le nom d'un groupe, un numéro de version SNMP, et un nom de sécurité.
#group GROUP      {v1|v2c|usm|tsm|ksm} SECNAME
group  mynagiosv1        v1             mynagios
group  mynagiosv2c       v2c            mynagios
    1. Ceci définit la vue.

TYPE est soit inclus ou exclus. MASK est une liste d'octets hexadécimaux séparés par des '.' ou ':'. Le MASQUE par défaut "ff" s'il n'est pas spécifié.

view NAME  TYPE     SUBTREE                              [MASK]
view cust1 included interfaces.ifTable.ifEntry.ifIndex.1 ff.a0
view cust2 included interfaces.ifTable.ifEntry.ifIndex.2 ff.a0
    1. Ceci définit les droits d'accès du groupe.

LEVEL est soit "noauth, auth, or priv". PREFX spécifie comment CONTEXTE doit être adapté par rapport au contexte de la requête entrante, soit "exact or prefix". READ, WRITE and NOTIFY specifies the view to be used for GET*, SET and TRAP/INFORM requests (although the NOTIFY view is not currently used). For v1 or v2c access, LEVEL will need to be noauth.

#access GROUP CONTEXT {any|v1|v2c|usm|tsm|ksm} LEVEL   PREFX   READ    WRITE   NOTIFY
access	 cust1	 ""	         any	        noauth	exact	all	none	none
access	 cust2	 ""	         any	        noauth	exact	all	none	none

Exemple de configuration:

   This last pair of settings are equivalent to the full VACM definitions:
   #         sec.name    source        community
   com2sec   sec-public  192.168.0.88  public
   #                  sec.model   sec.name
   group  mongroup     v1         sec-public
   group  mongroup     v2c        sec-public
   #              incl/excl   subtree     [mask]
   view   all     included    .1
   view   sysView included    system
   #        context    model level   prefix  read    write  notify (unused)
   access   mongroup    ""    any    noauth  exact   all     none   none

ou bien

agentAddress udp:161
rocommunity public  192.168.0.88
sysLocation    Sitting on the Dock of the Bay
sysContact     Me <me@example.org>
sysServices    72
proc  mountd
proc  ntalkd    4
proc  sendmail 10 1
disk       /     10000
includeAllDisks  10%
load   12 10 5
trapsink     localhost public
iquerySecName   internalUser       
rouser          internalUser
defaultMonitors          yes
linkUpDownNotifications  yes
extend    test1   /bin/echo  Hello, world!
extend-sh test2   echo Hello, world! ; echo Hi there ; exit 35
master          agentx

Les outils

  • Vous pouvez voir l'arbre des OID avec:
snmptranslate -Tp
  • Scli (paquet)

a collection of SNMP command line management tools

Les mibs

  • Où les trouver sur notre système:
/var/lib/mibs/MIB
search path
$HOME/.snmp/mibs
/usr/share/mibs/site
/usr/share/snmp/mibs
/usr/share/mibs/iana
/usr/share/mibs/ietf
/usr/share/mibs/netsnmp
  • Paquet pour leur install/gestion:
snmp-mibs-downloader
Install and manage Management Information Base (MIB) files
  • Un dépot sur internet pour les télécharger

http://www.mibdepot.com

OID Linux

CPU Statistics

  • Load
1 minute Load: .1.3.6.1.4.1.2021.10.1.3.1
5 minute Load: .1.3.6.1.4.1.2021.10.1.3.2
15 minute Load: .1.3.6.1.4.1.2021.10.1.3.3
  • CPU
percentage of user CPU time: .1.3.6.1.4.1.2021.11.9.0
raw user cpu time: .1.3.6.1.4.1.2021.11.50.0
percentages of system CPU time: .1.3.6.1.4.1.2021.11.10.0
raw system cpu time: .1.3.6.1.4.1.2021.11.52.0
percentages of idle CPU time: .1.3.6.1.4.1.2021.11.11.0
raw idle cpu time: .1.3.6.1.4.1.2021.11.53.0
raw nice cpu time: .1.3.6.1.4.1.2021.11.51.0
  • Memory Statistics
Total Swap Size: .1.3.6.1.4.1.2021.4.3.0
Available Swap Space: .1.3.6.1.4.1.2021.4.4.0
Total RAM in machine: .1.3.6.1.4.1.2021.4.5.0
Total RAM used: .1.3.6.1.4.1.2021.4.6.0
Total RAM Free: .1.3.6.1.4.1.2021.4.11.0
Total RAM Shared: .1.3.6.1.4.1.2021.4.13.0
Total RAM Buffered: .1.3.6.1.4.1.2021.4.14.0
Total Cached Memory: .1.3.6.1.4.1.2021.4.15.0
  • Disk Statistics

The snmpd.conf needs to be edited. Add the following (assuming a machine with a single ‘/’ partition):

disk / 100000 (or)
includeAllDisks 10% for all partitions and disks

The OIDs are as follows

Path where the disk is mounted: .1.3.6.1.4.1.2021.9.1.2.1
Path of the device for the partition: .1.3.6.1.4.1.2021.9.1.3.1
Total size of the disk/partion (kBytes): .1.3.6.1.4.1.2021.9.1.6.1
Available space on the disk: .1.3.6.1.4.1.2021.9.1.7.1
Used space on the disk: .1.3.6.1.4.1.2021.9.1.8.1
Percentage of space used on disk: .1.3.6.1.4.1.2021.9.1.9.1
Percentage of inodes used on disk: .1.3.6.1.4.1.2021.9.1.10.1
System Uptime: .1.3.6.1.2.1.1.3.0

Examples These Commands you need to run on the SNMP server Get available disk space for / on the target host

#snmpget -v 1 -c “community” target_name_or_ip .1.3.6.1.4.1.2021.9.1.7.1

this will return available disk space for the first entry in the ‘disk’ section of snmpd.conf; replace 1 with n for the nth entry Get the 1-minute system load on the target host

#snmpget -v 1 -c “community” target_name_or_ip .1.3.6.1.4.1.2021.10.1.3.1
Get the 5-minute system load on the target host
#snmpget -v 1 -c “community” target_name_or_ip .1.3.6.1.4.1.2021.10.1.3.2

Get the 15-minute system load on the target host

#snmpget -v 1 -c “community” target_name_or_ip .1.3.6.1.4.1.2021.10.1.3.3

Get amount of available swap space on the target host

#snmpget -v 1 -c “community” target_name_or_ip .1.3.6.1.4.1.2021.4.4.0
Outils personnels