| 1 | % Gestion et surveillance de réseau |
|---|
| 2 | --------------------------------- |
|---|
| 3 | |
|---|
| 4 | % Utilisation de syslog-ng pour la gestion des journaux |
|---|
| 5 | |
|---|
| 6 | |
|---|
| 7 | ## Objectifs |
|---|
| 8 | |
|---|
| 9 | * Apprendre utiliser syslog-ng pour gérer les journaux syslogs |
|---|
| 10 | |
|---|
| 11 | ## Notes |
|---|
| 12 | |
|---|
| 13 | * Les commandes précédées de "$" signifient que vous devez exécuter |
|---|
| 14 | la commande en tant qu'utilisateur général - et non en tant |
|---|
| 15 | qu'utilisateur root. |
|---|
| 16 | |
|---|
| 17 | * Les commandes précédées de "#" signifient que vous devez travailler |
|---|
| 18 | en tant qu'utilisateur root. |
|---|
| 19 | |
|---|
| 20 | * Les commandes comportant des lignes de commande plus spécifiques |
|---|
| 21 | (par exemple "rtrX>" ou "mysql>") signifient que vous exécutez |
|---|
| 22 | des commandes sur des équipements à distance, ou dans un autre |
|---|
| 23 | programme. |
|---|
| 24 | |
|---|
| 25 | # Exercices |
|---|
| 26 | |
|---|
| 27 | Veuillez identifier les participants qui utilisent le même routeur |
|---|
| 28 | que vous, s'il y'en a. Constituez un groupe et faites ensemble |
|---|
| 29 | l'exercice suivant. Il s'agit de désigner une personne pour se |
|---|
| 30 | connecter au routeur de votre groupe, mais chacun d'entre vous |
|---|
| 31 | participera à la configuration effective. |
|---|
| 32 | |
|---|
| 33 | # Configurez votre routeur virtuel afin qu'il envoie des messages |
|---|
| 34 | syslog à votre serveur : |
|---|
| 35 | |
|---|
| 36 | Vos routeurs sont capables d'envoyer des messages syslog à de multiples |
|---|
| 37 | destinations, ainsi un routeur peut envoyer des messages à 4 voire 5 |
|---|
| 38 | destinations différentes. Nous devons donc configurer le routeur pour |
|---|
| 39 | qu'il envoie des messages à chacun des PC de votre groupe. |
|---|
| 40 | |
|---|
| 41 | Vous allez vous connecter en SSH au routeur de votre groupe et |
|---|
| 42 | effectuer les opérations suivantes : |
|---|
| 43 | |
|---|
| 44 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 45 | $ ssh cisco@10.10.X.254 |
|---|
| 46 | rtrX> enable |
|---|
| 47 | rtrX# config terminal |
|---|
| 48 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 49 | |
|---|
| 50 | Répétez la commande "logging 10.10.X.Y" pour chaque PC de votre |
|---|
| 51 | groupe. En d'autres termes, si votre groupe est sur le routeur 6 |
|---|
| 52 | et que vous utilisez les PC 21, 22, 23 et 24 vous répéterez la |
|---|
| 53 | commande à quatre reprises avec l'IP de chaque machine (10.10.6.21, |
|---|
| 54 | 10.10.6.22, et ainsi de suite). |
|---|
| 55 | |
|---|
| 56 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 57 | rtrX(config)# logging 10.10.X.Y |
|---|
| 58 | ... |
|---|
| 59 | rtrX(config)# logging facility local0 |
|---|
| 60 | rtrX(config)# logging userinfo |
|---|
| 61 | rtrX(config)# exit |
|---|
| 62 | rtrX# write memory |
|---|
| 63 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 64 | |
|---|
| 65 | Regardons le résumé de la configuration des journaux (logs) avec 'show logging' |
|---|
| 66 | |
|---|
| 67 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 68 | rtrX# show logging |
|---|
| 69 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 70 | |
|---|
| 71 | Déconnectez-vous du routeur (exit) |
|---|
| 72 | |
|---|
| 73 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 74 | rtrX# exit |
|---|
| 75 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 76 | |
|---|
| 77 | C'est fait. Le routeur devrait maintenant envoyer des paquets UDP |
|---|
| 78 | SYSLOG à votre PC sur le port 514. Pour vérifier, ouvrez une session |
|---|
| 79 | sur votre PC et effectuez l'opération suivante : |
|---|
| 80 | |
|---|
| 81 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 82 | $ sudo -s |
|---|
| 83 | # apt-get install tcpdump (ne vous inquiétez pas si il est déjà installé) |
|---|
| 84 | # tcpdump -s0 -nv -i eth0 port 514 |
|---|
| 85 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 86 | |
|---|
| 87 | Puis demandez à une personne de votre groupe de se connecter au |
|---|
| 88 | routeur et d'entrer les commandes suivantes : |
|---|
| 89 | |
|---|
| 90 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 91 | $ ssh cisco@10.10.X.254 |
|---|
| 92 | rtrX> enable |
|---|
| 93 | rtrX# config terminal |
|---|
| 94 | rtrX(config)# exit |
|---|
| 95 | rtrX> exit |
|---|
| 96 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 97 | |
|---|
| 98 | Des informations de TCPDUMP devraient s'afficher sur l'écran de |
|---|
| 99 | votre PC. Celles-ci devraient ressembler à ce qui suit : |
|---|
| 100 | |
|---|
| 101 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 102 | 08:01:12.154604 IP (tos 0x0, ttl 255, id 11, offset 0, flags [none], proto UDP (17), length 138) |
|---|
| 103 | 10.10.9.254.57429 > 10.10.9.36.514: SYSLOG, length: 110 |
|---|
| 104 | Facility local0 (16), Severity notice (5) |
|---|
| 105 | Msg: 23: *Feb 19 08:01:10.855: %SYS-5-PRIV_AUTH_PASS: Privilege level set to 15 by cisco on vty0 (10.10.0.117) |
|---|
| 106 | 08:01:15.519881 IP (tos 0x0, ttl 255, id 12, offset 0, flags [none], proto UDP (17), length 130) |
|---|
| 107 | 10.10.9.254.57429 > 10.10.9.36.514: SYSLOG, length: 102 |
|---|
| 108 | Facility local0 (16), Severity notice (5) |
|---|
| 109 | Msg: 24: *Feb 19 08:01:14.215: %SYS-5-CONFIG_I: Configured from console by cisco on vty0 (10.10.0.117) |
|---|
| 110 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 111 | |
|---|
| 112 | Vous pouvez maintenant configurer le logiciel de journalisation sur |
|---|
| 113 | votre PC afin qu'il reçoive ces informations et les enregistre dans |
|---|
| 114 | un nouvel ensemble de fichiers : |
|---|
| 115 | |
|---|
| 116 | |
|---|
| 117 | 2. Installez syslog-ng |
|---|
| 118 | |
|---|
| 119 | Ces exercices s'effectuent en tant qu'utilisateur root. Si vous |
|---|
| 120 | n'êtes pas un utilisateur root sur votre machine, vous pouvez le |
|---|
| 121 | devenir en tapant : |
|---|
| 122 | |
|---|
| 123 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 124 | $ sudo -s |
|---|
| 125 | # apt-get install syslog-ng-core syslog-ng |
|---|
| 126 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 127 | |
|---|
| 128 | # Éditez /etc/syslog-ng/syslog-ng.conf |
|---|
| 129 | |
|---|
| 130 | Localisez les lignes |
|---|
| 131 | |
|---|
| 132 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 133 | source s_src { |
|---|
| 134 | system(); |
|---|
| 135 | internal(); |
|---|
| 136 | }; |
|---|
| 137 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 138 | |
|---|
| 139 | et remplacez-les par : |
|---|
| 140 | |
|---|
| 141 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 142 | source s_src { |
|---|
| 143 | system(); |
|---|
| 144 | internal(); |
|---|
| 145 | udp(); |
|---|
| 146 | }; |
|---|
| 147 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 148 | |
|---|
| 149 | Sauvez le fichier et quitter. |
|---|
| 150 | |
|---|
| 151 | Maintant, créez une configuration pour nos logs d'équipement réseau: |
|---|
| 152 | |
|---|
| 153 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 154 | # cd /etc/syslog-ng/conf.d/ |
|---|
| 155 | # editor 10-network.conf |
|---|
| 156 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 157 | |
|---|
| 158 | Dans ce fichier, copier et coller les lignes suivantes: |
|---|
| 159 | |
|---|
| 160 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 161 | filter f_routers { facility(local0); }; |
|---|
| 162 | |
|---|
| 163 | log { |
|---|
| 164 | source(s_src); |
|---|
| 165 | filter(f_routers); |
|---|
| 166 | destination(routers); |
|---|
| 167 | }; |
|---|
| 168 | |
|---|
| 169 | destination routers { |
|---|
| 170 | file("/var/log/network/$YEAR/$MONTH/$DAY/$HOST-$YEAR-$MONTH-$DAY-$HOUR.log" |
|---|
| 171 | owner(root) group(root) perm(0644) dir_perm(0755) create_dirs(yes) |
|---|
| 172 | template("$YEAR $DATE $HOST $MSG\n")); |
|---|
| 173 | }; |
|---|
| 174 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 175 | |
|---|
| 176 | Sauvez le fichier et quitter. |
|---|
| 177 | |
|---|
| 178 | # Créez le répertoire /var/log/network/ |
|---|
| 179 | |
|---|
| 180 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 181 | # mkdir /var/log/network/ |
|---|
| 182 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 183 | |
|---|
| 184 | # Redémarrez syslog-ng: |
|---|
| 185 | |
|---|
| 186 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 187 | # service syslog-ng restart |
|---|
| 188 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 189 | |
|---|
| 190 | # Tester syslog |
|---|
| 191 | |
|---|
| 192 | Pour s'assurer qu'il y ait des messages syslog, reconnectez vous |
|---|
| 193 | au routeur et effectuez des commandes "config", puis déconnectez vous, |
|---|
| 194 | c'est à dire: |
|---|
| 195 | |
|---|
| 196 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 197 | # ssh cisco@10.10.X.254 |
|---|
| 198 | rtrX> enable |
|---|
| 199 | rtrX# config terminal |
|---|
| 200 | rtrX(config)# exit |
|---|
| 201 | rtrX> exit |
|---|
| 202 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 203 | |
|---|
| 204 | Veillez à vous déconnecter du routeur. Si un trop grand nombre de |
|---|
| 205 | personnes se connectent et oublient de se déconnecter, d'autres ne |
|---|
| 206 | pourront pas accéder au routeur. |
|---|
| 207 | |
|---|
| 208 | # Sur votre PC, regardez si des messages commencent à apparaître sous |
|---|
| 209 | /var/log/network/2013/.../ |
|---|
| 210 | |
|---|
| 211 | |
|---|
| 212 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 213 | $ cd /var/log/network |
|---|
| 214 | $ ls |
|---|
| 215 | $ cd 2016 |
|---|
| 216 | $ ls |
|---|
| 217 | ... ceci vous montrera le contenu du répertoire pour le mois en cours |
|---|
| 218 | ... faites 'cd' et le nom de ce répertoire |
|---|
| 219 | $ ls |
|---|
| 220 | ... recommencer au niveau suivant (le jour du mois) |
|---|
| 221 | $ ls |
|---|
| 222 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 223 | |
|---|
| 224 | # En cas de problème |
|---|
| 225 | |
|---|
| 226 | Si aucun fichier n'apparait sous le répertoire /var/log/network, alors |
|---|
| 227 | une autre commande à essyer pendant qu'on est loggé sur le routeur, en |
|---|
| 228 | mode configuration, est de faire un shutdown / no shutdown sur une interface |
|---|
| 229 | Loopback (locale), par eemple: |
|---|
| 230 | |
|---|
| 231 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 232 | $ ssh cisco@rtrX |
|---|
| 233 | |
|---|
| 234 | rtrX> enable |
|---|
| 235 | rtrX# conf t |
|---|
| 236 | rtrX(config)# interface Loopback 999 |
|---|
| 237 | rtrX(config-if)# shutdown |
|---|
| 238 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 239 | |
|---|
| 240 | Attendre quelques secondes |
|---|
| 241 | |
|---|
| 242 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 243 | rtrX(config-if)# no shutdown |
|---|
| 244 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 245 | |
|---|
| 246 | Puis quitter, et sauver la configuration ("write mem"): |
|---|
| 247 | |
|---|
| 248 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 249 | rtrX(config-if)# exit |
|---|
| 250 | rtrX(config)# exit |
|---|
| 251 | rtrX# write memory |
|---|
| 252 | rtr1# exit |
|---|
| 253 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 254 | |
|---|
| 255 | Vèrifiez les logs sous '/var/log/network' |
|---|
| 256 | |
|---|
| 257 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 258 | # cd /var/log/network |
|---|
| 259 | # ls |
|---|
| 260 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 261 | |
|---|
| 262 | ... suivre la hiérarchie des répertoires. |
|---|
| 263 | |
|---|
| 264 | Toujours pas de logs ? |
|---|
| 265 | |
|---|
| 266 | Essayez la commande suivante pour envoyer un message de log en local: |
|---|
| 267 | |
|---|
| 268 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 269 | # logger -p local0.info 'Hello World!' |
|---|
| 270 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|---|
| 271 | |
|---|
| 272 | Si aucun fichier n'a été créé sous '/var/log/network', alors vérifier la |
|---|
| 273 | configuration pour des fautes de frappe. Ne pas oublier de redémarrer le |
|---|
| 274 | service syslog-ng à chaque fois que vous changez la configuration. |
|---|
| 275 | |
|---|
| 276 | Quelles autres commandes pouvez vous employer sur le routeur (ATTENTION!) |
|---|
| 277 | qui provoqueront l'envoi de messages syslog ? Vous pouvez essayer de |
|---|
| 278 | vous loger sur le router et taper un mot de passe incorrect pour "enable" |
|---|
| 279 | |
|---|
| 280 | Assurez-vous de faire un "ls" dans le répertoire de vos logs pour voir |
|---|
| 281 | si des logs ont été créés à un moment ou un autre. |
|---|