Agenda: exercises-log-management-tenshi-vFR.txt

File exercises-log-management-tenshi-vFR.txt, 8.7 KB (added by Araud A. A. AMELINA, 5 years ago)
Line 
1% Gestion des journaux - 2ème partie: utilisation de Tenshi
2%
3% Gestion & Supervision des Réseaux
4
5# Notes
6
7* Les commandes précédées de "$" signifient que vous devez exécuter
8  la commande en tant qu'utilisateur général - et non en tant
9  qu'utilisateur root.
10
11* Les commandes précédées de "#" signifient que vous devez travailler
12  en tant qu'utilisateur root.
13
14* Les commandes comportant des lignes de commande plus spécifiques
15  (par exemple "RTR-GW>" ou "mysql>") signifient que vous exécutez
16  des commandes sur des équipements à distance, ou dans un autre
17  programme.
18
19
20# Exercices
21
22D'abord assurez vous que vos routeurs sont configurés pour envoyer les
23logs (journaux) à votre serveur - ceci doit avoir été fait au cours
24de l'exercice précédent.
25
26## Mettre à jour la configuration de syslog-ng
27
28Si vous ne l'avez pas encore fait, loggez vous sur votre machine
29virtuelle et devenez l'utilisateur root:
30
31~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32$ sudo -s
33#
34~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
35
36Configurer syslog-ng pour qu'il réception et sauvegarde les journaux
37de tout routeur dans un seul fichier, pour faciliter l'inspection et
38l'analyse:
39
40Éditer `/etc/syslog-ng/conf.d/10-network.conf`,
41
42~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
43# cd /etc/syslog-ng/conf.d/
44# editor 10-network.conf
45~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
46
47... et ajouter ceci avant la dernière accolade fermante ( }; ):
48
49~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
50file("/var/log/network/everything", owner(root) group(root) perm(0644));
51~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
52
53Au final, le contenu de ce fichier doit ressembler à:
54
55~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
56filter f_routers { facility(local0); };
57
58log {
59        source(s_src);
60        filter(f_routers);
61        destination(routers);
62};
63
64destination routers {
65  file("/var/log/network/$YEAR/$MONTH/$DAY/$HOST-$YEAR-$MONTH-$DAY-$HOUR.log"
66  owner(root) group(root) perm(0644) dir_perm(0755) create_dirs(yes)
67  template("$YEAR $DATE $HOST $MSG\n"));
68
69  file("/var/log/network/everything", owner(root) group(root) perm(0644));
70
71};
72~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73
74Ceci activera la collecte de TOUT messages syslog qui correspond à la
75catégorie (facility) local0 et le stockage dans un seul fichier, afin
76que nous puissions lancer un script de supervisision sur ces messages.
77
78Assurez-vous d'avoir sauvé le fichier et quittez l'éditeur.
79
80Redémarrez syslog-ng afin qu'il charge la nouvelle configuration
81
82~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
83# service syslog-ng restart
84~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
85
86## Rotation des journaux
87
88Créez un script qui effectuera la remise à zéro du fichier des journaux
89afin qu'il ne devienne pas trop gros (copier & coller).
90
91~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
92# editor /etc/logrotate.d/everything
93~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
94
95Ajouter ce qui suit dans le fichier
96
97~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
98/var/log/network/everything {
99  daily
100  copytruncate
101  rotate 1
102  postrotate
103        /etc/init.d/tenshi restart
104  endscript
105}
106~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
107
108Puis sauvez le fichier et quitter l'éditeur.
109
110
111## Installation de tenshi
112
113~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
114# apt-get install tenshi
115~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
116
117
118## Configuration de tenshi
119
120Configuration de Tenshi pour que celui-ci vous envoie des alarmes
121par mail quand le routeur est reconfiguré (copier & coller):
122
123~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
124# editor /etc/tenshi/includes-available/network
125~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
126
127Ajouter ce qui suit dans le fichier
128
129~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
130set logfile /var/log/network/everything
131set queue network_alarms tenshi@localhost sysadm@localhost [*/1 * * * *] Log check
132
133group_host 10.10
134network_alarms SYS-5-CONFIG_I
135network_alarms PRIV_AUTH_PASS
136network_alarms LINK
137group_end
138~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
139
140Puis sauvez le fichier et quitter l'éditeur.
141
142Créer un lien symbolique pour que le fichier de configuration de Tenshi
143soit chargé (copier & coller):
144
145~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
146# ln -s /etc/tenshi/includes-available/network /etc/tenshi/includes-active
147~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
148
149Enfin, redémarrer Tenshi:
150
151~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
152# service tenshi restart
153~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
154
155
156## Tester Tenshi
157
158Loggez vous sur votre routeur, et effectuez des commandes "config"
159diverses (Exemples ci-dessous):
160
161~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
162$ ssh cisco@rtrX                [où "X" est le numéro de votre routeur]
163rtrX> enable
164Password: <password>
165rtrX# config terminal
166rtrX(config)# int FastEthernet0/0
167rtrX(config-if)# description Description Change for FastEthernet0/0 for Tenshi
168rtrX(config-if)# ctrl-z (combinaison de clavier)
169rtrX# write memory
170~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
171
172Ne vous déconnectez pas immédiatement - comme dans les exercices
173syslog-ng précédemment, effectuez un shutdown / no shutdown de
174l'interface loopback:
175
176~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
177rtrX# conf t
178rtrX(config)# interface Loopback 999
179rtrX(config-if)# shutdown
180~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
181
182attendre quelques secondes
183
184~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
185rtrX(config-if)# no shutdown
186~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
187
188Finir et sauvez la config ("write mem"):
189
190~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
191rtrX(config-if)# CTRL-z                                 (équivalent à 'exit' 2 fois)
192rtrX# write memory
193rtr1# exit
194~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
195
196Vérifiez que vous recevez des mails de la part de Tenshi pour l'utilisateur
197sysadm. Une méthode de vérification rapide est de regarder dans le répertoire
198du mail:
199
200~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
201$ ls -l /var/mail
202~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
203
204* Note: Tenshi inspecte /var/log/network/everything une fois par minute,
205  donc vous devrez attendre jusqu'à une minute pour que le mail arrive
206  jusqu'à l'utilisateur sysadm.
207
208Assurez vous que vous vous êtes loggés en tant que sysadm (et pas root).
209Soit vous ouvrez une nouvelle session avec ssh sur votre machine virtuelle,
210soit vous quittez l'utilisateur root (exit).
211
212Ensuite, faire:
213
214~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
215$ mutt
216~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
217
218Utilisez les flèches pour sélectionner un message envoyé par
219"tenshi@localhost", puis appuyer sur `ENTER` pour le lire, et
220`q` pour revenir à l'index, et `q` à nouveau pour quitter mutt.
221
222Si les mails n'arrivent pas, vérifier alors les choses suivantes:
223
224* Les journaux arrivent-ils dans le fichier `/var/log/network/everything` ?
225
226        $ tail /var/log/network/everything
227
228* Ces messages de logs montrent-il bien un nom de machine tel que 'rtr5',
229  voire une adresse IP comme 10.10.5.254 ? Souvenez-vous, tenshi est
230  configuré de telle façon qu'il ne regarde que les noms de machine
231  commençant pas 'rtr ou bien les IP commençant par '10.10' (ceci dépend
232  de la façon dont vous avez configuré tenshi)
233
234* Vérifiez la configuration tenshi. Redémarrer tenshi si vous la modifiez.
235
236* Si vous êtes coincé quand même, demander à un instructeur de vous aider.
237
238
239## Faculcatif: Ajouter une nouvelle règle à Tenshi
240
241Voyez si vous arrivez à ajouter une nouvelle règle à Tenshi pour qu'un
242email soit envoyé si un individu essaye de faire "enable" sur votre
243routeur, avec un mauvais mot de passe.
244
245Indices:
246
247* "PRIV_AUTH_FAIL" est la chaîne que Cisco IOS utilise dans les messages
248  dans ce cas.
249* Pour tester votre nouvelle règle, connectez vous à votre routeur, tapez
250  "enable" suivi d'un mot de passe incorrect.