jeudi 4 juin 2015

Utilisation de syslog-ng-Gestion et surveillance de réseau



Notes :
------
* Les commandes précédées de "$" signifient que vous devez exécuter la commande en tant qu'utilisateur général - et non en tant
qu'utilisateur root.
* Les commandes précédées de "#" signifient que vous devez
travailler
en tant qu'utilisateur root.
* Les commandes comportant des lignes de commande plus spécifiques
(par exemple "RTR-GW>" ou "mysql>") signifient que vous exécutez
des commandes sur des équipements à distance, ou dans un autre
programme.

Exercices
---------
Veuillez identifier les participants qui utilisent le même routeur que vous, s'il y'en a. Constituez un groupe et faites ensemble l'exercice suivant. Il s'agit de désigner une personne pour se
connecter au routeur de votre groupe, mais chacun d'entre vous participera à la configuration effective.
1. Configurez votre routeur virtuel afin qu'il envoie des messages syslog à votre serveur :
Vos routeurs sont capables d'envoyer des messages syslog à de multiples destinations, ainsi un routeur peut envoyer des messages à 4 voire 5 destinations différentes. Nous devons donc configurer le routeur pour qu'il envoie des messages à chacun des PC de votre groupe.
Vous allez vous connecter en SSH au routeur de votre groupe et effectuer les opérations suivantes :
$ ssh cisco@10.10.X.254
rtrX> enable
rtrX# config terminal
Répétez la commande "logging 10.10.X.X" pour chaque PC de votre groupe. En d'autres termes, si votre groupe est sur le routeur 6 et que vous utilisez les PC 18, 20, 22, 24 et 26 vous répéterez la
commande à cinq reprises avec l'IP de chaque machine (10.10.6.18, 10.10.6.20, et ainsi de suite).
rtrX(config)# logging 10.10.X.X
rtrX(config)# logging facility local5
rtrX(config)# logging userinfo
rtrX(config)# exit
rtrX# write memory
Regardons le résumé de la configuration des journaux (logs) avec 'show logging'
rtrX# show logging
Déconnectez-vous du routeur (exit)
rtrX# exit
C'est fait. Le routeur devrait maintenant envoyer des paquets UDP SYSLOG à votre PC sur le port 514. Pour vérifier, ouvrez une session sur votre PC et effectuez l'opération suivante :
$ sudo bash
# apt-get install tcpdump (ne vous inquiétez pas si il est déjà installé)
# tcpdump -e -s0 -ni eth0 port 514
Puis demandez à une personne de votre groupe de se connecter au routeur et d'entrer les commandes suivantes :
$ ssh cisco@10.10.X.254
rtrX> enable
rtrX# config terminal
rtrX(config)# exit
rtrX> exit
Des informations de TCPDUMP devraient s'afficher sur l'écran de votre PC. Celles-ci devraient ressembler à ce qui suit :
02:20:24.942289 ca:02:0d:b3:00:08 > 52:54:4a:5e:68:77, ethertype IPv4 (0x0800),
length 144: 10.10.0.6.63515 > 10.10.0.250.514: SYSLOG local5.notice, length: 102
02:20:24.944376 ca:02:0d:b3:00:08 > c4:2c:03:0b:3d:3a, ethertype IPv4 (0x0800),
length 144: 10.10.0.6.53407 > 10.10.0.241.514: SYSLOG local5.notice, length: 102
Vous pouvez maintenant configurer le logiciel de journalisation sur votre PC afin qu'il reçoive ces informations et les enregistre dans un nouvel ensemble de fichiers :
2. Installez syslog-ng
Ces exercices s'effectuent en tant qu'utilisateur root. Si vous n'êtes pas un utilisateur root sur votre machine, vous pouvez le devenir en tapant :
$ sudo bash
# apt-get install syslog-ng
2. Éditez /etc/syslog-ng/syslog-ng.conf
Localisez les lignes
source s_src {
system();
internal();
};
et remplacez-les par :
source s_src {
system();
internal();
udp();
};
Sauvez le fichier et quitter.
Maintant, créez une configuration pour nos logs d'équipement réseau:
# cd /etc/syslog-ng/conf.d/
# editor 10-network.conf
Dans ce fichier, copier et coller les lignes suivantes:
filter f_routers { facility(local5); };
log {
source(s_src);
filter(f_routers);
destination(routers);
};
destination routers {
file("/var/log/network/$YEAR/$MONTH/$DAY/$HOST-$YEAR-
$MONTH-$DAY-$HOUR.log"
owner(root) group(root) perm(0644) dir_perm(0755)
create_dirs(yes)
template("$YEAR $DATE $HOST $MSG\n"));
};
Sauvez le fichier et quitter.
3. Créez le répertoire /var/log/network/
# mkdir /var/log/network/
4. Redémarrez syslog-ng:
# service syslog-ng restart
5. Tester syslog
Pour s'assurer qu'il y ait des messages syslog, reconnectez vous au routeur et effectuez des commandes "config", puis déconnectez vous,
c'est à dire:
# ssh cisco@10.10.X.254
rtrX.ws.nsrc.org> enable
rtrX.ws.nsrc.org# config terminal
rtrX.ws.nsrc.org(config)# exit
rtrX.ws.nsrc.org> exit
Veillez à vous déconnecter du routeur. Si un trop grand nombre de personnes se connectent et oublient de se déconnecter, d'autres ne pourront pas accéder au routeur.

6. Sur votre PC, regardez si des messages commencent à apparaître sous /var/log/network/2015/.../
$ cd /var/log/network
$ ls
$ cd 2015
$ ls
... ceci vous montrera le contenu du répertoire pour le mois en cours
... faites 'cd' et le nom de ce répertoire
$ ls
... recommencer au niveau suivant (le jour du mois)
$ ls
En cas de problème
------------------
Si aucun fichier n'apparait sous le répertoire /var/log/network, alors
une autre commande à essyer pendant qu'on est loggé sur le routeur, en
mode configuration, est de faire un shutdown / no shutdown sur une
interface
Loopback (locale), par eemple:
$ ssh cisco@rtrX
rtrX> enable
rtrX# conf t
rtrX(config)# interface Loopback 999
rtrX(config-if)# shutdown
Attendre quelques secondes
rtrX(config-if)# no shutdown
Puis quitter, et sauver la configuration ("write mem"):
rtrX(config-if)# exit
rtrX(config)# exit
rtrX# write memory
rtr1# exit
Vèrifiez les logs sous '/var/log/network'
# cd /var/log/network
# ls
... suivre la hiérarchie des répertoires.
Toujours pas de logs ?
Essayez la commande suivante pour envoyer un message de log en local:
# logger -p local0.info 'Hello World!'
Si aucun fichier n'a été créé sous '/var/log/network', alors vérifier la configuration pour des fautes de frappe. Ne pas oublier de redémarrer le service syslog-ng à chaque fois que vous changez la configuration.
Quelles autres commandes pouvez vous employer sur le routeur (ATTENTION!) qui provoqueront l'envoi de messages syslog ? Vous pouvez essayer de vous loger sur le router et taper un mot de passe incorrect pour "enable" Assurez-vous de faire un "ls" dans le répertoire de vos logs pour
voir si des logs ont été créés à un moment ou un autre

Aucun commentaire:

Enregistrer un commentaire