Pour commencer des liens intéressants:
http://www.linux-france.org/prj/inetdoc/articles/devmgmt/devmgmt.log.html
http://doc.ubuntu-fr.org/syslog-ng
Sur le serveur
Le choix de syslog-ng améliore 2 éléments par rapport à syslog: la sécurité et la non discrimination des sources. En effet Syslog-ng permet de ranger les log de chaque équipement dans des fichiers différents.
La première chose à faire bine sur est d’installer syslog-ng, cette action vas remplacer (donc supprimer) le syslog de base:
apt-get install syslog-ng
La configuration s’effectue par l’intermédiaire du fichier:
/etc/syslog-ng/syslog-ng.conf
Pour chaque catégorie de journalisation, on doit composer avec une définition de source, de filtre et de destination. Voici un exemple reprenant le cas du commutateur :
Définition d’une source
source net
# journalisation via eth2 -> commutateur sw1
udp(ip(192.168.2.1));
;
Définition d’un filtre
filter f_sw1
host(192.168.2.2) and level(info,notice,warn,crit,err);
;
Définition d’une destination
destination d_net_devices
file("/var/log/$HOST.log" owner("root") group("adm") perm(0640));
;
Utilisation des trois définitions
log
source(net);
filter(f_sw1);
destination(d_net_devices);
;
L’application de cette configuration entraîne la création d’un fichier /var/log/192.168.2.2.log qui reçoit tous les messages du commutateur sw1 qui a l’adresse IP 192.168.2.2.
Pour notre cas, nous allons ajouter une source udp qui permet de se mettre à l’écoute en udp([?User_Datagram_Protocol]) sur le port 514 par défaut
source s_all
# message generated by Syslog-NG
internal();
# standard Linux log source (this is the default place for the syslog()
# function to send logs to)
unix-stream("/dev/log");
# messages from the kernel
file("/proc/kmsg" log_prefix("kernel: "));
# use the following line if you want to receive remote UDP logging messages
# (this is equivalent to the "-r" syslogd flag)
#udp();
;
source s_net
udp();
;
Les définitions à ajouter:
#ajout cisco
destination df_cisco file("/var/log/cisco.log"); ;
# ajout cisco
filter f_cisco host(10.10.10.1); ;
Et à la fin du fichier on ajoute les lignes suivantes
# cisco -/var/log/cisco.log
log
source(s_net);
filter(f_cisco);
destination(df_cisco);
;
Ce qui permet à syslog-ng d’envoyer tous les message venant de l’adresse 10.10.10.1 vers le fichier /var/log/cisco.log
Il ne reste plus qu’a redémarrer le serveur:
/etc/init.d/syslog-ng restart
sur le routeur
Voici la config:
logging buffered 4096 notifications
logging source-interface Vlan1
logging 10.10.10.3
nous avons définit la taille du buffer à 4096, le niveau est de log est 5 (notifications). Sur l’interface Vlan1. Et pour finir nous envoyons tous les log sur la machine 10.10.10.3