Magazine Università

Tutto quello che devi sapere su SNMP

Creato il 29 dicembre 2010 da Ewilly

Definizione


Simple Network Management Protocol (SNMP),definita dalla IETF(Internet Engineering Task Force) nella RFC 1157 è un protocollo Client/Server del livello applicazione dello Stack ISO/OSI  che fa parte del pacchetto TCP/IP e permette di gestire l’infrastruttura di intere reti
Permette ad un amministratore di rete di :
-monitorare e controllo di ogni apparato raggiungibile tramite la rete
-monitorare le prestazioni della rete
-diagnosticare problemi di rete

Come funziona SMNP?


Un sistema di gestione di rete si basa su due elementi che comunicano fra di loro: un supervisore e degli agenti. Il supervisore è una console tramite il quale l’amministratore di rete esegue delle operazioni di gestione. Gli agenti sono delle entita che si trovano collegati ad ogni aparato di rete dal quale recuperano delle informazioni(informazioni hardware ,parametri di configurazione ,statistiche di prestazione o altro direttamente collegato al comportamento in corso dell’aparato in questione.)
Queste informazioni sono  classificati in un database. SNMP permette il dialogo fra il supervisore e gli agenti tramite lo scambio di messagi SNMP che usano il protocollo UDP per il trasporto.
Più in dettaglio, il manager dialoga con i sistemi gestiti essenzialmente in due modi: invia richieste SNMP e riceve notifiche SNMP.

Quali sono i componenti SNMP?


Supervisore SNMP (il Client)


Il supervisore è un generalmente un calcolatore che l’amministratore utilizza per eseguire uno o piu NMS(Network Managment System : console che permette di fare operazioni di gestione). Il supervisore rimane in ascolto sulla porta UDP 162.

Funzionalità importanti:


-Fare delle richieste agli agenti
-Ricevere delle risposte dagli agenti
-Modificare delle variabili negli agenti
-Riconoscere eventi  asincroni  dagli agenti (tramite i TRAP)

Managed Device(ogetto gestibile)


Dispositivo o apparato di rete che puo essere monitorato o gestito attraverso delle informazioni sulle sue caratteristiche.
Esempio:Switch,Hub,router,server,Stampante…

Agente SMNP (il server)


Un agente SNMP è un programma che integrato in un oggetto gestibile  che permette a quest’ultimo di raccogliere informazioni localmente in un database per poi renderlo disponibile al supervisore SNMP  quando viene richiesto. Ce ne sono di due tipi: quello standard (Net-SNMP) e quelli proprietari.L’agente rimane in ascolto sulla porta UDP 161

Funzionalità importanti:


-collezionare informazioni di gestione sul suo comportamento e sull’ambiente
-Caricare e scaricare informazioni di gestione come definiti nel database
-Segnalare eventi al supervisore
-Agire come proxy per un nodo della rete non compatibile con SNMP
Diagramma di base di una comunicazione SNMP:
Tutto quello che devi sapere su SNMP
Database MIB(Management Information Base)
Ogni SNMP contiene un database di informazioni sui propri parametri gestibili. Il supervisore SNMP usa questo database quando richiede informazioni da usare dal NMS.
Questo database condiviso prende il nome di MIB. Gli oggetti nel MIB sono suddivisi in categorie (System,interface,Adress Translation,ip,icmp,Tcp,Udp,Egp,Transmission,Snmp)

Struttura dell’MIB:


.
SMI(Structure Management Information) definisce in modo standard come devono essere strutturate le informazioni e la loro gerarchia per essere inserite in un Information Base: MIB.
Un MIB è strutturato in albero gerarchico e contiene parametri gestibili che sono identificati da un Object Identifier (OID).
Ci sono 2 tipi di parametri gestibili :
-scalari(una sola istanza dell’oggetto)  Esempio: Nome del venditore di un apparatoàrisposta unica
- tabulari(un istanza multipla dell’ogetto) Esempio:L’utilizzo della CPU di un quad-Processoreà risposta con 4 elementi
Ogni parametro gestito puo essere identificato dalla catena completa dei nomi degli ogetti sul suo cammino patendo dalla radice oppure dalla catena degli OID dei parametri del cammino in questione.
Esempio: OID di “sysDescr” è iso.organization.dod.internet.MGMT.MIB.SYSTEM è equivalente a 1.3.6.1.2.1.1
Tutto quello che devi sapere su SNMP

Messaggi SNMP:


Il protocollo SNMP prevede sei tipi di messaggi:
get-request : utilizzata per il recupero di una o più informazioni contenute nel MIB di un Agent da parte di un supervisore;
get-next-request : utilizzata per "percorrere" le strutture dati del MIB di un Agent da parte di un supervisore, accedendo in  sequenza alla informazioni in esso contenute.
get-bulk :utilizzata per leggere un MIB con un'unica richiesta anziché utilizzare piu messaggi get-next-request da parte di un supervisore
set-request : utilizzata per la modifica delle informazioni contenute nel MIB di un Agent da parte di un Supervisore;
get-response:utilizzata in risposta ad ognuna delle precedenti per inviare informazioni di risposta al supervisore (get, get-next) o per confermare l’operazione richiesta (set)
trap : utilizzata, nella comunicazione asincrona, per la segnalazione da parte di un Agent ad un supervisore di eventi considerati come eccezioni al normale funzionamento. Per l'operazione di trap sono previsti un numero limitato di eventi predefiniti per i quali è definito l'utilizzo di questa operazione;

Il Pacchetto SMNP-PDU(Protocol Data Unit):


I pacchetti SNMP (SNMP-PDU) sono costituiti da una etichetta globale, contenente 3 campi, e dal messaggio SNMP vero e proprio. L’etichetta contiene:
- la lunghezza complessiva della PDU SNMP in ottetti,
- la versione del protocollo SNMP utilizzata per la codifica del messaggio,
- la stringa identificativa della “community” del mittente del messaggio.
Quest’ultimo campo è utilizzato per realizzare i meccanismi di controllo dell'accesso e di autorizzazione previsti in SNMP. Tali meccanismi sono particolarmente semplici: la “community” definisce una particolare relazione tra un Agente ed uno o più supervisori: quando un'entità SNMP invia un messaggio, vi inserisce, in chiaro, la comunità di appartenenza; se questa viene accettata dall'entità SNMP che riceve il messaggio, l'entità chiamante è riconosciuta come appartenete alla comunità e si procede all’esecuzione dell’operazione conseguente, altrimenti il messaggio viene ignorato.
Ci sono tre tipi di community:
monitor:permete di lavorare in Read only , quindi il supervisore puo solamente effetuare richieste agli agenti.
Control:lavoro read/write;Qui i supervisori possono anche modificare degli informazioni di gestione tramite richieste del tipo set.
Trap:permette a un agente di mandare un messaggio Trap SNMP al supervisore.

Versioni di SNMP(v1-v2-v3)


Vediamo la differenza fra le 3 versioni si SNMP.

VersioneSistema di AutenticazioneCriptaggiofunzionamento

SNMPv1CommunityNoSNMPv1 utilizza un sitema di autenticazione che una password di nome communty. 
 

SNMPv2MD5NoSNMPv2 utilizza un sitema di autenticazione che is basa sugli algoritmi MD5 
 

SNMPv3MD5 o SHADESSNMPv3 in piu dell’autenticazion cifratta con MD5,fornisce un criptaggio DES 
 


Il sitema di autenticazione del SNMPv1 non è in grado di garantire la completa sicurezza dell’accesso agli agenti, in quanto il trasporto in chiaro dell'identificativo della comunità consente, in modo reletivamente facile, l’intercettazione della stringa di community e quindi l’intrusione di Manager non autorizzati: a questo inconveniente si è cercato di porre rimedio attraverso la definizione di meccanismi più severi per l'autenticazione e con l'introduzione di meccanismi di crittografia, definiti dapprima nel S-SNMP (Secure-SNMP) e poi nell’SNMPv2.
Limitazione SNMPv1 e v2: community name in chiaroà soggetti al packet sniffing
SNMPv3 ha tanti vantaggi:
- il controllo dell’integrità dei pacchetti
-autenticazione forte:trasmissione dei dati via un canale sicuro(crittografatto)
-il criptaggio dei pacchetti

Conclusione


Perche usare SNMP?
-è semplice
-richiede un insieme minimo di risorse per una sua efficiente implementazione
-tutti gli apparati TCP/IP sono venduti con un Agente SNMP integrato
-Si puo usare SNMP anche in una rete con dei nodi non-SNMP (introduzione di un “Proxy Agent”, ossia si utilizza un sistema separato che ospita un agente SNMP ed il MIB dell’apparato da gestire, e agisce per conto di questo nelle relazioni con il supervisore, trasformando le operazioni SNMP in comandi comprensibili dall’apparato e generando Trap verso il sistema di gestione in corrispondenza delle segnalazioni proprietarie che riceve. )
Spero che ti è piaciuto l’articolo.

Ritornare alla prima pagina di Logo Paperblog

Magazine