Beruflich Dokumente
Kultur Dokumente
Informatiques
Cours 3 :
Le Protocole SNMP
Simple Network Management Protocol
R. BENAINI
Plan
Pourquoi ?
Comment ?
Route
Netstat
telnet / SSH
Interface Web
Type de fonctions d’administration
Gestion de la configuration
Configuration distante d'éléments du réseau
Gestion de la sécurité
Contrôle d’accès
Authentification
Cryptage
Stratégie d’administration
« Plug and Play/Pray »
on branche et ça marche
aucun paramètre à définir
Configuration « à la main »
ex : à chaque ajout de terminal, lui affecter statiquement des
parametres, définir les pilotes, …
But de l’administrateur :
Tirer le meilleur profit du matériel présent
Nécessité de trouver un compromis entre les deux approches
précédentes
Une stratégie est propre à chaque entité gérante (entreprise,
laboratoire, etc.)
Les standards d'administration
Le protocole SNMP
Composants SNMP
Type des messages SNMP
Management Information Base (MIB)
Le format des messages SNMP
9
Qu’est ce que le protocole SNMP ?
SNMP est un protocole de gestion réseaux proposé
par l’IETF (Internet Engineering Task Force)
10
SNMP : Composants d’un réseau
Nœuds administrés : Entité capable de communiquer des
informations d’état
Hôtes, routeurs, ponts, imprimantes…
Exécute un agent SNMP qui gére une base de données locale
de variables donnant l’état et l’historique
Information d’administration :
Chaque entité gère des variables décrivant son état,
Une variable est appelée objet.
L’ensemble des objets d’un réseau se trouve dans une base de
donnée : la MIB (Management Information Base)
Architecture classique d’administration
SNMP
Notification
Arrêt du système
Tentative de réparation
Les différentes versions de SNMP
SNMPv1 (ancien standard) : Première version apparue en 1989.
13
Messages SNMP
Recherche d’informations :
GetRequest : recherche d’une variable sur un agent.
Modification de valeurs :
SetRequest : permet de changer la valeur d’une variable d’un
agent. Message Signification
Get Demande de la valeur d’une variable
Get-next Demande de la variable suivante
Envoie d’informations
Get-bulk Chargement d’une grande table (SNMPv2)
Trap : détection d’un incident Set Mise à jour d’une ou plusieurs variables
Inform Message de description d’une MIB locale
(SNMPv2)
Trap Indication de déroutement provenant d’un agent
Response Réponse
Echanges des messages SNMP
Base de donnée d’informations de
gestion
Management Information Base (MIB) : Ensemble des informations
nécessaires à l'administration.
Exemples d'objets :
table de routage, nombre de collisions, taille des files d'attentes
beaucoup de compteurs : charge du CPU, paquets reçus …
Un fichier MIB est un document texte écrit en langage ASN.1 qui décrit
les variables, les tables et les alarmes gérées au sein d'une MIB.
SNMP procède de deux façon pour nommer les objets d'une MIB :
la première est un nom unique par objet (ex:sysUpTime),
la seconde utilise les notations d'ASN.1
MIB
La classification des objets est arborescente. L'identificateur d'un
objet est défini, en ASN.1 par le chemin qui conduit à l'objet.
iso.org.dod.internet.private.entreprise.
.1.3.6.
MIB-I
(3)
(33)
(17)
(4)
(6)
org (3)
dod (6)
internet (1)
mgmt (2)
Le schéma suivant représente la mib-2 (1)
branche associée à l'Internet et on
system(1) interfaces (2) at (3) ip (4) ... snmp (11)
s'intéresse au protocole IP.
ipInDelivers (9) ipRouteTable (21)
ipInDelivers : donne le nombre de 22763
ipRouteEntry (1)
paquets correctement délivrés (22763
paquets). ipRoutedest (1) ipRouteMetric1 (3) ipRouteNextHop(7)
8.6.7.4 5 80.3.76.5
22.6.8.0 2 80.3.76.5
3.67.8.9 6 73.7.8.4
org (3)
dod (6)
mgmt (2)
ipRoutedest: le destinataire à atteindre mib-2 (1)
ipRouteMetric1 : Le coût du chemin pour system(1) interfaces (2) at (3) ip (4) ... snmp (11)
get-next-request/get-response: la station
d'administration interroge une table de
l'agent
set-request/get-response: la station
d'administration enregistre des données
au niveau d'un agent
Version Community
Community PDU
PDU
Authentification GetRequest-PDU
(Chaîne ASCII)
GetNextRequest-PDU
la version SNMP
GetResponse-PDU
SetRequest-PDU
Trap-PDU
Valeur du
0 1 3
champ
Format du message SNMP
Le champ version permet de s'assurer que l'administrateur et l'agent
utilisent la même version du SNMP
L’approche TLV
Type PDU Identificateur Etat d ’erreur Index erreur Objet 1, Valeur 1 Objet 2 , Valeur 2 .......
Type PDU identificateur Adresse agent Type de trap générique Type de trap spécifique Horodatage Objet1, Valeur1 Objet2, valeur2 ..
Classe F Tag
Valeur de l ’étiquette (Tag)
Type primitif =0
Valeur de la classe Type construit =1 Exemple d ’étiquettes pour classe UNIVERSAL
00 UNIVERSAL 2 = INTEGER ;
01 APPLICATION 4 = OCTET STRING
10 CONTEXT-SPECIFIC 5 = NULL;
11 PRIVATE 6 = OBJET IDENTIFIER
16 = SEQUENCE ou SEQUENCE OF
Exemple :
Le codage de l’OID 1.3.6.1.2.1.200 sera :
40x1 + 3 = (43) décimal ; puis 6; puis 1 etc ....
38
Ethernet
Destination: 00:00:00:00:00:00 (00:00:00_00:00:00)
Source: 00:00:00:00:00:00 (00:00:00_00:00:00)
Type: IP (0x0800)
00 00 00 00 A3 E0 53 16 00 A0 24 70 C2 B7 08 00 45 00
00 10 00 45 1A 03 00 00 1E 11 72 8B C0 09 C8 02 C0 09
00 20 C8 04 04 00 00 A1 00 31 7E 18 30 27 02 01 00 04
00 30 06 70 75 62 6C 69 63 A0 1A 02 02 0F A4 02 01 00
00 40 02 01 00 30 0E 30 0C 06 08 2B 06 01 02 01 01 03
00 50 00 05 00 00 0A 00 7E
La source (suite)
00 00 00 43 E0 53 16 00 A0 24 70 C2 B7 08 00 45 00
00
00 00 45 1A 03 00 00 1E 11 72 8B C0 09 C8 02 C0 09
10
00 C8 04 04 00 00 A1 00 31 7E 18 30 27 02 01 00 04
20
00 06 70 75 62 6C 69 63 A0 1A 02 02 0F A4 02 01 00
30
00 02 01 00 30 0E 30 0C 06 08 2B 06 01 02 01 01 03
40
00 00 05 00 00 0A 00 7E
50
Séquence 30 27 27 = 39 octets
Séquence 30 27 27 = 39 octets
Entier 02 01 : 00
Séquence 30 27 27 = 39 octets
Entier 02 01 : 00
Caractère 04 06 : 70 75 62 6C 69 63 Header
P U B L I C
Séquence 30 27 27 = 39 octets
Entier 02 01 : 00
Caractère 04 06 : 70 75 62 6C 69 63
P U B L I C
Séquence A0 A0 = 1010 0000 (Get Request)
1A 1A = 26 octets
PDU
Séquence 30 27 27 = 39 octets
Entier 02 01 : 00
Caractère 04 06 : 70 75 62 6C 69 63
P U B L I C
Séquence A0 A0 = 1010 0000 (Get Request)
1A 1A = 26 octets
Entier 02 01 : 00
Caractère 04 06 : 70 75 62 6C 69 63
P U B L I C
Séquence A0 A0 = 1010 0000 (Get Request)
1A 1A = 26 octets
Séquence 30 0E 0E = 14 octets
Séquence 30 0C OC = 12 octets
Objet 06 08 : 2B 06 01 02 01 01 03 00
1.3. 6. 1. 2. 1. 1. 3. 0
Null 05 00
Message Get Request avec SNMP
Field type Length Value Comments
Value
Type length
30 27 Sequence 39 - sequence of 0x27 octets
Context-specific Get-
A0 1B constructed
27 request
get-request length 0x1B
02 03 00 00 0C Integer 3 12 Request ID 12
30 0E Sequence 14 -
30 0C Sequence 12 -
M IB
06 08 2B 06 01 02 01 01 03 00 Object ID 8 descriptor 1.3.6.1.2.1.1.3.0 › SYSUPTIME
05 00 Null 0 0
30 27 02 01 00 04 05 61 64 6D 69 6E A0 1B 02 03 00 00 0C 02 01 00 02 01 00 30 0E 30 0C 06 08 2B 06 01 02 01 01 03 00 05 00
Message Get Response avec SNMP
Value
Type length
Field type Length Value C om m ents
Context-specific 30 Get-
A2 1E response Get-response with length 0x1E
constructed
30 11 Se qu en ce 17 -
3 0 0F Se qu en ce 15 -
30 0F 06 08 2B 06 01 02 01 01 03 00 43 03 00 A7 F8
1-sysDescr
OID : 1.3.6.1.2.1.1 .3 Syst
2-sysObjectID
3-sysUpTime
1 4-sysContact
5-sysName
Interface 6-sysLocation
1 2
UIT STD Directory Addr. Trans.
0 0
2 1 3
Mgmt
Internet MIB I IP
1 3 2
ISO 1 1 4
1 Experim.
3 ICMP
4 2 2 5
2
Private
4 TCP
ORG 5 3 6
2
3
DoD UDP
6 4 7
EGP
8
SNMP : Avantages
L'avantage majeur dans le fait d'utiliser SNMP est qu'il est de
conception simple ; il est donc aisé de l'implémenter sur un réseau,
puisqu'il ne prend pas longtemps à configurer et qu'il est de petite taille.
est de :