1 | Installation et Configuration de Nagios |
---|
2 | |
---|
3 | Notes : |
---|
4 | ------ |
---|
5 | * Les commandes précédées de "$" signifient que vous devez exécuter |
---|
6 | la commande en tant qu'utilisateur général - et non en tant |
---|
7 | qu'utilisateur root. |
---|
8 | |
---|
9 | * Les commandes précédées de "#" signifient que vous devez travailler |
---|
10 | en tant qu'utilisateur root. |
---|
11 | |
---|
12 | * Les commandes comportant des lignes de commande plus spécifiques |
---|
13 | (par exemple "rtrX>" ou "mysql>") signifient que vous exécutez |
---|
14 | des commandes sur des équipements à distance, ou dans un autre |
---|
15 | programme. |
---|
16 | |
---|
17 | Exercices |
---|
18 | --------- |
---|
19 | |
---|
20 | Exercices Partie I |
---|
21 | ================== |
---|
22 | |
---|
23 | 0. Ouvrez une session sur votre PC ou ouvrez une fenêtre de terminal |
---|
24 | -------------------------------------------------------------------- |
---|
25 | en tant qu'utilisateur sysadm. |
---|
26 | ------------------------------ |
---|
27 | |
---|
28 | 1. Installez Nagios Version 3 |
---|
29 | ------------------------------ |
---|
30 | |
---|
31 | $ sudo apt-get install nagios3 nagios3-doc |
---|
32 | |
---|
33 | Il vous sera demandé de donner un mot de passe pour l'utilisateur |
---|
34 | "nagiosadmin". Donnez lui le mot de passe standard utilisé |
---|
35 | dans l'atelier. |
---|
36 | |
---|
37 | Sauf si vous avez déjà un agent MTA installé, nagios3 va installer |
---|
38 | postfix en tant que dépendance. Sélectionnez l'option "Internet Site". |
---|
39 | |
---|
40 | 2. Regardez la configuration de base de Nagios |
---|
41 | ---------------------------------------------- |
---|
42 | |
---|
43 | Ouvrez un navigateur et accédez à votre machine de la façon suivante : |
---|
44 | |
---|
45 | http://pcN.ws.nsrc.org/nagios3/ |
---|
46 | |
---|
47 | À l'invite de connexion, répondez comme indiqué ci-dessous : |
---|
48 | |
---|
49 | username: nagiosadmin |
---|
50 | pass: <MOT DE PASSE DE LA CLASSE> |
---|
51 | |
---|
52 | Cliquez sur le lien "Hosts" dans le menu à gauche pour voir ce qui est |
---|
53 | déjà configuré. |
---|
54 | |
---|
55 | 4. Ajout de Routeurs, PC et Commutateurs |
---|
56 | ---------------------------------------- |
---|
57 | |
---|
58 | Nous allons créer 3 fichiers: |
---|
59 | |
---|
60 | routers.cfg switches.cfg pcs.cfg |
---|
61 | |
---|
62 | ... et créer des définitions pour le matériel qui se trouve dans notre |
---|
63 | atelier. |
---|
64 | |
---|
65 | 4a. Création du fichier switches.cfg |
---|
66 | ------------------------------------ |
---|
67 | |
---|
68 | $ cd /etc/nagios3/conf.d (pour être certains) |
---|
69 | $ touch routers.cfg switches.cfg pcs.cfg |
---|
70 | $ sudo editor switches.cfg |
---|
71 | |
---|
72 | Dans ce fichier ajoutez une entrée pour cet élément : |
---|
73 | |
---|
74 | define host { |
---|
75 | use generic-host |
---|
76 | host_name sw |
---|
77 | alias Backbone switch |
---|
78 | address 10.10.0.253 |
---|
79 | } |
---|
80 | |
---|
81 | Sauvez le fichier et quittez l'éditeur. |
---|
82 | |
---|
83 | 4b. Création du fichier routers.cfg |
---|
84 | ----------------------------------- |
---|
85 | |
---|
86 | Nous avons au maximum 10 routeurs. Ceci sont rtr1-rtr9 et gw. Nous allons |
---|
87 | créer des définitions pour chacun d'entre eux. |
---|
88 | |
---|
89 | Nous définission ci-dessous les 4 premiers, à vous d'ajouter le reste! |
---|
90 | |
---|
91 | $ sudo editor routers.cfg |
---|
92 | |
---|
93 | define host { |
---|
94 | use generic-host |
---|
95 | host_name gw |
---|
96 | alias Routeur de backbone |
---|
97 | address 10.10.0.254 |
---|
98 | } |
---|
99 | |
---|
100 | define host { |
---|
101 | use generic-host |
---|
102 | host_name rtr1 |
---|
103 | alias Routeur de groupe 1 |
---|
104 | address 10.10.1.254 |
---|
105 | } |
---|
106 | |
---|
107 | define host { |
---|
108 | use generic-host |
---|
109 | host_name rtr2 |
---|
110 | alias Routeur de groupe 2 |
---|
111 | address 10.10.2.254 |
---|
112 | } |
---|
113 | |
---|
114 | |
---|
115 | |
---|
116 | Pas besoin d'ajouter tous les routeurs maintenant! Vous pouvez |
---|
117 | revenir plus tard et le faire... |
---|
118 | |
---|
119 | On ajoute ici aussi les points d'accès sans fil: |
---|
120 | |
---|
121 | define host { |
---|
122 | use generic-host |
---|
123 | host_name ap1 |
---|
124 | alias Wireless Access Point 1 |
---|
125 | address 10.10.0.251 |
---|
126 | } |
---|
127 | |
---|
128 | define host { |
---|
129 | # Pas toujours utilisé |
---|
130 | use generic-host |
---|
131 | host_name ap2 |
---|
132 | alias Wireless Access Point 2 |
---|
133 | address 10.10.0.252 |
---|
134 | } |
---|
135 | |
---|
136 | |
---|
137 | Sauvez le fichier et quittez l'éditeur. |
---|
138 | |
---|
139 | 4c. Création du fichier pcs.cfg |
---|
140 | ------------------------------- |
---|
141 | |
---|
142 | Nous allons maintenant créer les définitions pour toutes les machines |
---|
143 | virtuelles (PC) dans notre atelier. Ci-dessous vous trouverez les |
---|
144 | quelques premières définitions. Vous devez compléter ce fichier comme |
---|
145 | vous l'avez fait ci-dessus pour les routeurs, et ajouter autant de PCs |
---|
146 | que vous le désirez. |
---|
147 | |
---|
148 | Au minimum, nous vous demandons de créer les 4 PCs du groupe dont vous |
---|
149 | êtes le membre, et au moins 1 PC d'un autre groupe. |
---|
150 | |
---|
151 | |
---|
152 | $ sudo editor pcs.cfg |
---|
153 | |
---|
154 | define host { |
---|
155 | use generic-host |
---|
156 | host_name noc |
---|
157 | alias Le NOC atelier |
---|
158 | address 10.10.0.250 |
---|
159 | } |
---|
160 | |
---|
161 | # |
---|
162 | # Group 1 |
---|
163 | # |
---|
164 | |
---|
165 | define host { |
---|
166 | use generic-host |
---|
167 | host_name pc1 |
---|
168 | alias pc1 |
---|
169 | address 10.10.1.1 |
---|
170 | } |
---|
171 | |
---|
172 | define host { |
---|
173 | use generic-host |
---|
174 | host_name pc2 |
---|
175 | alias pc2 |
---|
176 | address 10.10.1.2 |
---|
177 | } |
---|
178 | |
---|
179 | # Un PC d'un autre groupe (exemple! En choisir un autre!) |
---|
180 | |
---|
181 | define host { |
---|
182 | use generic-host |
---|
183 | host_name pc20 |
---|
184 | alias pc20 |
---|
185 | address 10.10.5.20 |
---|
186 | } |
---|
187 | |
---|
188 | |
---|
189 | Vous pouvez sauver & quitter le fichier à ce stade, et continuer à ajouter |
---|
190 | d'autres PC pour les autres groups. |
---|
191 | |
---|
192 | ** LES ÉTAPES SUIVANTES DE 5a - 5c DOIVENT ÊTRE RÉPÉTÉES À CHAQUE MISE À ** |
---|
193 | ** JOUR DE LA CONFIGURATION! ** |
---|
194 | |
---|
195 | 5a. Toujours vérifier que votre configuration est OK après l'avoir modifiée: |
---|
196 | ---------------------------------------------------------------------------- |
---|
197 | |
---|
198 | $ sudo nagios3 -v /etc/nagios3/nagios.cfg |
---|
199 | |
---|
200 | ... vous devriez voire quelques avertisemments (mais rien de critique) comme: |
---|
201 | |
---|
202 | Checking services... |
---|
203 | Checked 7 services. |
---|
204 | Checking hosts... |
---|
205 | Warning: Host 'gw' has no services associated with it! |
---|
206 | Warning: Host 'rtr1' has no services associated with it! |
---|
207 | Warning: Host 'rtr2' has no services associated with it! |
---|
208 | |
---|
209 | etc.... |
---|
210 | Total Warnings: N |
---|
211 | Total Errors: 0 |
---|
212 | |
---|
213 | Things look okay - No serious problems were detected during the check. |
---|
214 | |
---|
215 | ... Nagios essaie de nous dire que c'est inhabituel de vouloir surveiller |
---|
216 | une machine pour laquelle on n'a pas configuré de service - c'est à dire |
---|
217 | autre chose que le ping. |
---|
218 | |
---|
219 | 5b. Recharger/redémarrer Nagios |
---|
220 | |
---|
221 | $ sudo service nagios3 restart |
---|
222 | |
---|
223 | ASTUCE : Vous allez devoir répéter cette opération à plusieurs |
---|
224 | reprises. Si vous regroupez l'ensemble sur une seule ligne, comme |
---|
225 | ci-dessous, alors vous pourrez utiliser la touche de déplacement |
---|
226 | vers le haut et relancer le tout en une seule fois : |
---|
227 | |
---|
228 | $ sudo nagios3 -v /etc/nagios3/nagios.cfg && sudo service nagios3 restart |
---|
229 | |
---|
230 | Le '&&' garantit que le redémarrage ne se passe que si la configuration |
---|
231 | est valide. |
---|
232 | |
---|
233 | |
---|
234 | 5c. Vérification via l'interface web |
---|
235 | ------------------------------------ |
---|
236 | |
---|
237 | Rendez-vous sur votre interface web (http://pcN.ws.nsrc.org/nagios3/) et |
---|
238 | vérifiez que les machines que vous avez ajoutées sont désormais visible |
---|
239 | via l'interface web. |
---|
240 | |
---|
241 | Cliquer sur "Host Detail" dans le menu sur la gauche pour voir ceci. |
---|
242 | Vous verrez peut-être des machines en état "PENDING" (en cours) pendant |
---|
243 | que Nagios vérifie l'état des serveurs. |
---|
244 | |
---|
245 | |
---|
246 | 6. Visualisation des détails des machines et de la cartographie |
---|
247 | --------------------------------------------------------------- |
---|
248 | |
---|
249 | Rendez-vous sur http://pcN.ws.nsrc.org/nagios3/ |
---|
250 | |
---|
251 | Cliquer sur "Host Detail" dans le menu sur la gauche. Est-ce que toutes |
---|
252 | les machines que vous avez définies sont listées ? Sont-elle "up" (en |
---|
253 | marche) ? |
---|
254 | |
---|
255 | Cliquer sur "Status Map" dans le menu de cauche. Vous devriez y voir |
---|
256 | vos machines, avec le processus Nagios figurant au milieu. |
---|
257 | |
---|
258 | |
---|
259 | Partie II - Configurer le contrôle des services du NOC de la classe |
---|
260 | ------------------------------------------------------- |
---|
261 | |
---|
262 | 0. Configuration |
---|
263 | |
---|
264 | Maintenant que notre matériel est configuré, nous pouvons commencer |
---|
265 | à indiquer à Nagios les services à surveiller sur le matériel |
---|
266 | configuré, comment regrouper le matériel de façon intéressante, |
---|
267 | comment regrouper les services, etc. |
---|
268 | |
---|
269 | 1. Affectez un contrôle de services au NOC de notre classe |
---|
270 | |
---|
271 | # editor hostgroups_nagios2.cfg |
---|
272 | |
---|
273 | - Trouver le groupe d'hôtes nommé "ssh-servers". Dans la section membres |
---|
274 | de la définition, remplacez la ligne : |
---|
275 | |
---|
276 | members localhost |
---|
277 | |
---|
278 | par |
---|
279 | |
---|
280 | members localhost,noc |
---|
281 | |
---|
282 | Sauvegardez le fichier et quittez |
---|
283 | |
---|
284 | Vérifiez que vos modifications sont correctes : |
---|
285 | |
---|
286 | $ sudo nagios3 -v /etc/nagios3/nagios.cfg |
---|
287 | |
---|
288 | Redémarrez Nagios pour voir les nouveaux services associés à votre hôte : |
---|
289 | |
---|
290 | $ sudo service nagios3 restart |
---|
291 | |
---|
292 | Cliquez sur le lien "Services" dans l'interface web (menu de gauche) |
---|
293 | de Nagios. |
---|
294 | |
---|
295 | Vous devriez pouvoir trouver votre nouveau service: |
---|
296 | |
---|
297 | |
---|
298 | noc SSH PENDING ... |
---|
299 | |
---|
300 | |
---|
301 | PARTIE III |
---|
302 | |
---|
303 | Définition des services pour tous les PC |
---|
304 | ----------------------------------------------------------------------------- |
---|
305 | |
---|
306 | Note: Par défaut, l'intervalle de contrôle normal (normal_check_interval) |
---|
307 | des services est de 5 (minutes) dans `generic-service_nagios2.cfg`. |
---|
308 | |
---|
309 | Vous pouvez porter cette valeur à 1 pour accélérer la détection des |
---|
310 | problèmes de service, tout du moins dans l'atelier. |
---|
311 | |
---|
312 | 1. Déterminez les services à définir et les périphériques associés |
---|
313 | |
---|
314 | - C'est le coeur même de l'utilisation de Nagios et des outils de |
---|
315 | surveillance réseau en général. |
---|
316 | |
---|
317 | Jusqu'ici, nous avons simplement utilisé la commande ping pour |
---|
318 | vérifier que les hôtes physiques sont actifs sur notre réseau et |
---|
319 | nous avons commencé à surveiller un seul service sur un seul hôte |
---|
320 | (votre PC). La prochaine étape consiste à décider quels services |
---|
321 | vous souhaitez surveiller pour chacun des hôtes de la classe. |
---|
322 | |
---|
323 | - Caractéristiques de cette classe particulière : |
---|
324 | |
---|
325 | Routeurs : Service ssh et snmp |
---|
326 | Commutateurs : Service telnet et éventuellement ssh ainsi que snmp |
---|
327 | PC : Tous les PC offrent un service ssh et http et devraient |
---|
328 | avoir un service SNMP maintenant |
---|
329 | Le NOC offre aussi un service snmp |
---|
330 | |
---|
331 | Nous allons donc configurer Nagios afin qu'il vérifie ces |
---|
332 | services sur ces périphériques. |
---|
333 | |
---|
334 | 2.) Vérifiez que SSH est exécuté sur les routeurs et les images des PC de |
---|
335 | l'atelier |
---|
336 | |
---|
337 | - Dans le fichier services_nagios2.cfg, il existe déjà une entrée |
---|
338 | pour le contrôle des services SSH, vous n'avez donc pas besoin |
---|
339 | de créer cette étape. Au lieu de cela, il vous suffit de redéfinir |
---|
340 | l'entrée "ssh-servers" dans le fichier |
---|
341 | /etc/nagios3/conf.d/hostgroups_nagios2.cfg. |
---|
342 | |
---|
343 | L'entrée initiale dans le fichier ressemblait à ceci : |
---|
344 | |
---|
345 | # A list of your ssh-accessible servers |
---|
346 | define hostgroup { |
---|
347 | hostgroup_name ssh-servers |
---|
348 | alias SSH servers |
---|
349 | members localhost |
---|
350 | } |
---|
351 | |
---|
352 | Que faut-il modifier à votre avis ? |
---|
353 | |
---|
354 | Corriger la ligne "members". Vous devez créer des entrées pour tous les |
---|
355 | PC de la classe, les routeurs et les commutateurs exécutant ssh. |
---|
356 | |
---|
357 | Avec ces informations et le schéma du réseau, vous devriez pouvoir |
---|
358 | finaliser cette entrée. |
---|
359 | |
---|
360 | L'entrée devrait ressembler à ceci : |
---|
361 | |
---|
362 | define hostgroup { |
---|
363 | hostgroup_name ssh-servers |
---|
364 | alias SSH servers |
---|
365 | members localhost,pc1,pc2,...,ap1,noc,rtr1,rtr2,..,gw |
---|
366 | } |
---|
367 | |
---|
368 | Remarque : conservez "localhost" - Cette entrée identifie |
---|
369 | votre PC et représente le point de vue réseau de Nagios. |
---|
370 | Ainsi, par exemple, si vous êtes sur le "pc3", vous ne |
---|
371 | devrez pas inclure "pc3" dans la liste des PC de la classe, |
---|
372 | car il est représenté par l'entrée "localhost". |
---|
373 | |
---|
374 | L'entrée "members" sera une longue ligne et bouclera |
---|
375 | probablement à l'écran. |
---|
376 | |
---|
377 | Pensez à inclure l'ensemble des PC et routeurs que vous |
---|
378 | avez définis. N'incluez pas d'entrées si elles ne sont pas |
---|
379 | déjà définies dans pcs.cfg, switches.cfg ou routers.cfg - cela |
---|
380 | veut dire: si vous n'avez, par exemple, PAS créé de "pc8" dans |
---|
381 | pcs.cfg, alors n'allez pas ajouter "pc8" dans le hostgroup! |
---|
382 | |
---|
383 | - Lorsque vous avez terminé, effectuez le contrôle avant démarrage : |
---|
384 | |
---|
385 | $ sudo nagios3 -v /etc/nagios3/nagios.cfg && sudo service nagios3 restart |
---|
386 | |
---|
387 | et visualisez vos modifications dans l'interface web de Nagios. |
---|
388 | |
---|
389 | Pour poursuivre avec les groupes d'hôtes, vous pouvez créer des |
---|
390 | groupes supplémentaires pour une utilisation ultérieure, comme par |
---|
391 | exemple tous nos serveurs virtuels. N´hésitez pas à modifier de |
---|
392 | nouveau le fichier hostgroups_nagios2.cfg : |
---|
393 | |
---|
394 | # editor hostgroups_nagios2.cfg |
---|
395 | |
---|
396 | et ajoutez les lignes suivantes à la fin du fichier : |
---|
397 | |
---|
398 | # Une liste de routeurs virtuels |
---|
399 | define hostgroup { |
---|
400 | hostgroup_name cisco7200 |
---|
401 | alias Cisco 7200 Routers |
---|
402 | members rtr1,rtr2,rtr3,rtr4,rtr5,rtr6,rtr7,rtr8,rtr9 |
---|
403 | } |
---|
404 | |
---|
405 | |
---|
406 | Ne mettre dans le groupe ci-dessus QUE les routeurs que vous avez |
---|
407 | définis dans routers.cfg. |
---|
408 | |
---|
409 | Enregistrez et fermez le fichier. Vérifiez que tout est correct : |
---|
410 | |
---|
411 | $ sudo nagios3 -v /etc/nagios3/nagios.cfg |
---|
412 | |
---|
413 | Si tout semble correct, alors redémarrez Nagios |
---|
414 | |
---|
415 | $ sudo service nagios3 restart |
---|
416 | |
---|
417 | 3.) Vérifiez que http fonctionne sur tous les PC de la classe. |
---|
418 | |
---|
419 | - Cette étape est presque identique à l'exercice précédent. Il |
---|
420 | vous suffit de modifier la création du service HTTP pour chaque |
---|
421 | PC (pas de routeurs ou de commutateurs). Rappelez-vous que vous |
---|
422 | n'avez pas besoin d'ajouter votre machine car celle-ci est déjà |
---|
423 | définie en tant que "localhost". |
---|
424 | |
---|
425 | Si vous aves des questions où des problèmes de compréhension, demander |
---|
426 | de l'aide à un formateur. |
---|