Agenda: exercises-snmp-v1-v2c-vFR.txt

File exercises-snmp-v1-v2c-vFR.txt, 7.4 KB (added by admin, 7 years ago)
Line 
1Exercices SNMP, partie I
2======================
3
4Remarque : Bon nombre de commandes utilisées dans cet exercice n'ont pas besoin d'être exécutées en tant que root, mais il est prudent de les exécuter toutes en tant que root.
5 Il est donc plus simple de lancer un shell en tant que root et d'entrer toutes les commandes à ce niveau. Vous pouvez lancer un shell de root ainsi :
6
7    $ sudo bash
8
91. Installation de paquets :
10--------------------
11
12    # apt-get install snmp snmpd       # ajoute les outils et l'agent
13
142. Essai de SNMP
15
16---------------
17
18Pour vérifier que l'installation SNMP est opérationnelle, exécutez la commande snmpstatus sur chacun des dispositifs suivants
19
20    $ snmpstatus -c 'NetManage' -v2c IP_ADDRESS
21
22Où IP_ADDRESS correspond à la liste suivante :
23
24    * Le serveur NOC :                  10.10.0.254
25    * Le serveur NOC :                  10.10.0.250
26    * Le commutateur du backbone :  10.10.0.253
27    * Les routeurs de la classe :   10.10.0.201-210 (peut-être moins que 10)
28    * Les points d'accès :              10.10.0.251
29
303. SNMP Walk et OID
31---------------------
32
33Vous allez maintenant utiliser la commande 'snmpwalk', qui fait partie de la boîte à outils SNMP, sur chacun des équipements testés plus haut afin de lister les tables associées aux OID ci-dessous :
34
35    .1.3.6.1.2.1.2.2.1.2
36    .1.3.6.1.2.1.31.1.1.1.18
37    .1.3.6.1.4.1.9.9.13.1
38    .1.3.6.1.4.1.11.2.14.11.1.2
39    .1.3.6.1.2.1.25.2.3.1
40    .1.3.6.1.2.1.25.4.2.1
41
42Vous essaierez avec deux variantes de la commande 'snmpwalk' :
43
44    $ snmpwalk     -c 'NetManage' -v2c IP_ADDRESS OID
45
46et
47
48    $ snmpwalk -On -c 'NetManage' -v2c IP_ADDRESS OID
49
50... où OID est l'un des trois OID listés ci-dessus : .1.3.6...
51
52Remarque : l'option "-On" active l'affichage numérique, à savoir : aucune conversion OID <-> MIB de l'objet n'aura lieu.
53
54Pour ces OID :
55
56a) Tous les dispositifs répondent-ils ?
57
58b) Avez-vous remarqué quelque chose d'important à propos de l'OID sur la sortie ?
59
604. Configuration de SNMP sur votre routeur Cisco
61---------------------------------------------
62
63Connectez-vous à votre routeur Cisco virtuel, et
64vérifiez que snmp y est déjà bien configuré:
65
66    $ ssh -l cisco 10.10.0.X        # où X est le numéro de votre routeur
67
68Login par défaut : "cisco", mot de passe "cisco", mot de passe enable secret "cisco"
69
70        rtr$> enable
71        Password:
72        rtr1#show run | inc snmp
73        ...
74        rtr1#show run | inc 99
75        ...
76
77Si ce n'est pas le cas, il faut configurer SNMP:
78
79        rtrX# configure terminal
80        rtrX(config)# access-list 99 permit 10.10.0.0 0.0.255.255
81        rtrX(config)# snmp-server community NetManage ro 99
82        rtrX(config)# exit
83        rtrX# write memory
84
85Que remarquez-vous ?  Que signifie l'access-list 99 ?
86
87Maintenant de retour sur votre PC (ouvrez une autre fenêtre SSH), effectuez un
88test en utilisant certains des OID de la section 3 ci-dessus.
89
90    $ snmpwalk -c 'NetManage' -v2c 10.10.0.X <OID>
91
92Que se passe-t-il si vous essayez d'utiliser une chaîne de communauté erronée (en remplaçant par exemple "NetManage" par autre chose) ?
93
945. Configuration de snmpd sur votre PC
95-------------------------------------
96
97* Editez le fichier suivant :
98
99        # editor /etc/snmp/snmpd.conf
100
101    Commentez cette ligne (en AJOUTANT '#' au début):
102
103        com2sec paranoid  default         public
104
105    ... comme suit :
106
107        #com2sec paranoid  default         public
108       
109    Et supprimez le commentaire de la ligne (SUPPRIMEZ le '#' en début de ligne) et changez de communauté :
110
111        #com2sec readonly  default         public
112
113    ... comme suit :
114
115        com2sec readonly  default         NetManage
116
117* Editez le fichier /etc/default/snmpd, et repérez la ligne :
118   
119        SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'
120
121    Supprimez 127.0.0.1 à la fin, ce qui donne :
122
123        SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid'
124
125* Relancez snmpd
126
127        # /etc/init.d/snmpd stop
128        # /etc/init.d/snmpd start
129
1306. Vérifiez que snmpd fonctionne :
131-------------------------------
132
133    $ snmpstatus -c NetManage -v2c localhost
134
135Qu'observez-vous ?
136
1377. Testez votre voisin
138----------------------
139
140Vérifiez maintenant que vous pouvez exécuter snmpstatus avec le serveur de votre voisin :
141
142    $ snmpstatus -c NetManage -v2c 10.10.0.X             # X = 1 -> 26 (PCs)
143
144
1458. Ajoutez des MIB
146--------------
147
148Lorsque vous aviez exécuté :
149
150    $ snmpwalk -c NetManage -v2c 10.10.0.201  .1.3.6.1.4.1.9.9.13.1
151
152ou
153
154    $ snmpwalk -c NetManage -v2c 10.10.0.253  .1.3.6.1.4.1.11.2.14.11.1.2
155
156vous aviez peut-être remarqué que le client SNMP (snmpwalk) ne parvenait pas à interpréter tous les OID issus de l'agent :
157
158    SNMPv2-SMI::enterprises.9.9.13.1.3.1.2.1 = STRING: "chassis"
159    SNMPv2-SMI::enterprises.9.9.13.1.3.1.6.1 = INTEGER: 1
160
161ou
162
163    ...
164    RFC1155-SMI::enterprises.11.2.14.11.1.2.6.1.4.1 = INTEGER: 4
165    RFC1155-SMI::enterprises.11.2.14.11.1.2.6.1.4.2 = INTEGER: 4
166    RFC1155-SMI::enterprises.11.2.14.11.1.2.6.1.4.3 = INTEGER: 5
167    RFC1155-SMI::enterprises.11.2.14.11.1.2.6.1.4.4 = INTEGER: 4
168    ...
169
170Qu'est-ce que "9.9.13.1.3.1.3" ?
171Qu'est-ce que ".11.2.14.11.1.2.6.1.4" ?
172
173Pour pouvoir interpréter cette information, nous devons télécharger des MIB supplémentaires :
174
175* Téléchargez les fichiers suivants sur votre machine :
176
177        MIB CISCO : ftp://ftp.cisco.com/pub/mibs/v2/CISCO-SMI.my
178                    ftp://ftp.cisco.com/pub/mibs/v2/CISCO-ENVMON-MIB.my
179
180    Toutefois, nous avons un miroir local sur http://noc.ws.nsrc.org/mibs/ qui sera beaucoup plus rapide (surtout pour le gros paquet de la mib HP)
181
182        # apt-get install wget
183        # cd /usr/share/snmp/mibs
184        # wget http://noc.ws.nsrc.org/mibs/CISCO-SMI.my
185        # wget http://noc.ws.nsrc.org/mibs/CISCO-ENVMON-MIB.my
186
187        Créez le fichier /etc/snmp/snmp.conf et mettez dedans:
188
189        mibdirs /usr/share/snmp/mibs:/usr/share/snmp/mibs/hp
190        mibs ALL
191
192    Ceci indique aux commandes snmp* qu'elles doivent charger TOUS les MIBS
193        dans les répertoires /usr/share/snmp/mibs (et /usr/share/snmp/mibs/hp
194        si celles-ci sont installées).
195   
196* Enregistrez le fichier et quittez.
197
198Faites maintenant un nouvel essai :
199
200    $ snmpwalk -c 'NetManage' -v2c 10.10.0.254  .1.3.6.1.4.1.9.9.13.1
201
202Que remarquez-vous ?
203
204
2059. SNMPwalk - le reste de la MIB-II
206--------------------------------
207
208Essayez d'exécuter snmpwalk sur des hôtes (routeurs, commutateurs, machines)
209que vous n'avez pas encore testés, dans le réseau 10.10.0.X
210
211Notez le type d'informations que vous pouvez obtenir.
212
213    $ snmpwalk -c NetManage -v2c 10.10.0.X ifDescr
214    $ snmpwalk -c NetManage -v2c 10.10.0.X ifTable
215    $ snmpwalk -c NetManage -v2c 10.10.0.X ifAlias
216    $ snmpwalk -c NetManage -v2c 10.10.0.X ifOperStatus
217    $ snmpwalk -c NetManage -v2c 10.10.0.X ifAdminStatus
218    $ snmpwalk -c NetManage -v2c 10.10.0.X if
219
220Pouvez-vous expliquer la différence entre ifOperStatus et ifAdminStatus ?
221
222Pouvez-vous imaginer un scénario où cela pourrait être utile ?
223
224
225
22610. Autres choses intéressantes dans les MIB-OID
227--------------------
228
229* Utilisez les OID du début de cette série d'exercices et examinez :
230
231        a) les processus qui s'exécutent sur le serveur de votre voisin (hrSWRun)
232        b) l'espace disque disponible sur le serveur de votre voisin (hrStorage)
233        c) les interfaces sur le serveur de votre voisin (ifIndex, IfDescr)
234
235    Pouvez-vous utiliser des noms abrégés pour parcourir ces tables OID ?
236
237* Faites un essai avec la commande "snmptranslate", par exemple :
238
239        $ snmptranslate .1.3.6.1.4.1.9.9.13.1.3.1.3.1
240
241* Essayez avec différents OID