49
Syslog et outils de supervision MAURIZIO Laurent LOTH Ludovic Architecture et sécurité réseaux M. NOLOT Florent

Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

Embed Size (px)

Citation preview

Page 1: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

Syslog

et outils de

supervision

MAURIZIO Laurent

LOTH Ludovic

Architecture et sécurité réseaux

M. NOLOT Florent

Page 2: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

Introduction

Outils indispensables à l’administration

système et réseau

Historique

Sécurité

Contrôle

Aide à la gestion des erreurs et des pannes

Page 3: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

Plan du cours

I. Syslog :

I. Protocole

II. Syslogd

III. Klogd

II. Outils de supervision :

I. MRTG

II. RRDTool

III. Nagios

IV. Les autres

III. Conclusion

Page 4: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux

Qu’est ce que c’est ?

Un protocole,

ET un logiciel (un Daemon).

A quoi ca sert ?

Journalisation système locale et réseau.

Sur quelles plateformes ?

Linux, BSD, Solaris, HP-UX, AIX (IBM).

Introduction

Page 5: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux

Développé pour la branche UNIX des systèmes BSD (Berkeley Software Distribution) en 1980 (SendMail project) par Eric Allman,

Aujourd’hui utilisé sur tous les systèmes UNIX, GNU/Linux et surtout sur les équipements réseaux de nombreux constructeurs.

RFC3164 « The BSD Syslog Protocol » (Août 2001)

Historique

Page 6: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux1. Syslog : le protocole

Transport Layer (couche 4),

Liaison en UDP sur le port 514 (par défaut),

Modèle client-serveur, plusieurs types de

machine :

• Device (client),

• Relay (relais),

• Collector (serveur).

Page 7: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux1. Syslog : le protocole

Les messages Syslog :

3 parties :

PRI : priorité du message

HEADER :

Mmm dd hh:mm:ss hostname

MSG : [ TAG : CONTENT ]

Taille <= 1024bits

Page 8: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux1. Syslog : le protocole

Codes PRI

Page 9: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux1. Syslog : le protocole

Code PRI :

Code = < Service x 8 + Sévérité >

Exemple :

Service : Mail : 2

Sévérité : Critique : 2

Code = 2 x 8 + 2 : <18>

Page 10: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux1. Syslog : le protocole

Device

Relay

Device

Relay

Device

Collector Collector Collector

Device Device

Relay

Device

Device

Exemples de topologies :

Page 11: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux2. Syslogd : le démon

Syslogd est un démon des journaux

Fichier de configuration :

/etc/syslog.conf

Executé au démarage et fonctionne en

permanence

Redémarré par :

#kill –HUP ‘/bin/cat /var/run/syslog.pid

Page 12: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux3. Syslogd : configuration

Comment écrire un fichier de configuration ?

facility.level <tab> action

Facility : service, processus, programme

Level : sévérité

Action : destination du log

Les lignes vides ou débutant par un # seront

ignorées lors du lancement du daemon.

Page 13: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux3. Syslogd : configuration

Facility :

user Messages generated by user processes (default).

kern Messages generated by the kernel.

mail The mail system.

daemon System daemons, such as ftpd

auth The authorization system: login, su…

lpr The line printer spooling system: lpr, lpc,...

news Reserved for the USENET network news system.

cron Reserved for cron/at messages generated by

systems that do logging through syslog.

local0-7 Reserved for local use.

mark For timestamp messages produced internally by

syslogd.

Page 14: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux3. Syslogd : configuration

Page 15: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux3. Syslogd : configuration

Les sélecteurs peuvent contenir les mots clés

particuliers :

* : qui signifie tout

none : qui signifie rien

Un sélecteur peut contenir plusieurs

programmes séparés par des virgules

On peut combiner plusieurs sélecteurs avec des

points-virgules

Page 16: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux3. Syslogd : configuration

Actions :

Action Signification

Filename écrit un message dans un fichier sur la

machine locale

@hostname transmet le message au syslogd de la machine

correspondant à hostname

@ipaddress transmet le message à l’hôte correspondant à

l’adresse ip ipaddress

User1,user2,… affiche le message sur l’écran des utilisateurs s’il

sont logés

* Envoi le message à tous les utilisateurs logés

Page 17: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux3. Syslogd : configuration

/etc/syslog.conf

Exemple :

Sélécteur Action

*.err;auth.notice /dev/console

lpr.debug /var/adm/lpd-errs

mail.debug /var/spool/mqueue/syslog

*.alert root

*.emerg *

Page 18: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux3. Syslogd : configuration

Exemple :

#fichier syslog.conf du dpt info, hôte maitre des journaux

#urgences : vers la console et le fichier journal, avec la date

*.emerg /dev/console

*.err;kern,mark.debug;auth.notice /dev/console

*.err;kern,mark.debug;user.none /var/adm/console.log

auth.notice /var/adm/console.log

#envoi les messages non-urgents aux fichiers journaux habituels

*.err;user.none;kern.debug /var/adm/messages

daemon,auth.notice;mail.crit /var/adm/messages

lpr.debug /var/adm/lpd-errs

Mail.debug /var/adm/mail.log

Page 19: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux3. Syslogd : configuration

Exemple (suite):

#messages d’autorisations locales comme sudo et npasswd

local2.debug /var/adm/sudo.log

local2.alert /var/adm/sudo-errs.log

auth.info /var/adm/auth.log

#autres messages locaux

local0.info /var/adm/netblazer.log

local4.notice /var/adm/da.log

local6.debug /var/adm/annex-isn.log

local7.debug /var/adm/tcp.log

#message de l’utilisateur (par defaut si aucune catégorie n’est

spécifiée)

user.info /var/adm/user.log

Page 20: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux3. Syslogd : configuration

Exemples de programmes utilisant Syslog :

Programme Categories Niveaux Descriptions

ftpd démon err-debug démon ftp

inetd démon err,warning super-démon d’internet

passwd auth err gestion mdp

popper local0 notice,debug système de mail mac/pc

sendmail mail alert-debug transport e-mail

tcpd local7 err-debug emballage tcp pour inetd

su auth crit,notice change d’IUD

sudo local2 alert,notice programme SU-limité

…..

Page 21: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux4. Syslog : Lire un fichier Log

Page 22: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux

Kernel Logging Daemon

Peut-être utilisé comme un client de Syslogd ou

optionnellement comme un processus autonome

Fonction :

Récupérer et enregistrer les messages du

noyau linux

klogd

Page 23: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux

Comment ca marche ?

klogd intercepte les messages que le

noyau génère grâce à la fonction printk

(affichage console noyau) et les envoie

au programme syslog

Utilisé avec Syslog, aucune configuration

nécessaire.

klogd

Page 24: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux

Gestionnaire de journaux systèmes nouvelle

génération (NG) : Remplacant de Syslogd

Facilité de centralisation des logs machine,

Portabilité reconnue,

Configuration de base très avancée,

Possibilité de chrooter son environnement,

Export des logs reçus vers un serveur MySQL,

Utilisation de macros possible pour le nom des logs,

Possibilité de chiffrer les logs envoyés via la techno SSL,

Utilisation des protocoles UDP et TCP pour le transfert,

Possibilité d’utilisation des expressions régulières.

Syslog-NG

Page 25: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

I. Syslog sous Linux

Un point important de l’administration

système et réseau au niveau de : Sécurité

Gestion des pannes

Gestion des erreurs (utilisateur et système)

Existence d’outils de gestion de journaux

permettant : Alertes sonores ou visuelles pour l’administrateur,

Appels téléphoniques, SMS, mails en cas d’alerte,

Mise en relief des données importantes…

Conclusion

Page 26: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

Multi Router Traffic Grapher

Qu’est ce que c’est ?

Outils de surveillance réseau Open Source

Développé en 1994 par Tobias Oetiker

Script Perl

Sur quelles plateformes ?

Unix, Windows, Mac et la plupart des

routeurs

1. MRTG 1.

Page 27: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

A quoi ca sert ?

Initialement à surveiller d’une connexion

réseau

Contrôle les variables SNMP et RMON

Surveiller :

Les charges processeurs,

Nombre de fichiers ouverts,

Température,

Etc…

1. MRTG 1.

Page 28: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

Station

II. Les Outils de Supervision

Collecte des informations

Les stocke dans une base de données

(MIB : Management Information Base)

Restitue les informations sous forme de

graphique

1. MRTG

NMS

Agent

Requête

Exécute

la requêteRéponse

Alerte

1.

Page 29: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

Avant l’installation de MRTG :

Installation de gcc

Installation de Perl

Installation de gd (graphical display)

Installation de MRTG

Configuration de SNMP

Configuration de MRTG

Quelques scripts connus :ping-nerim, mem, webstat, process, tcpcount,….

1. MRTG 1.

Page 30: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision1. MRTG 1.

Page 31: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

Round-Robin Database Tool

Qu’est ce que c’est ?

Suite d’outils de surveillance réseau Open

Source,

Développé en 1997 en C par Tobias Oetiker.

A quoi ça sert ?

Remplacer MRTG,

Stocker , restaurer des données (rrd)

Afficher des graphiques

2.

Page 32: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

Les améliorations par rapport à MRTG :

Maths sur flottant (positif et négatifs),

Accepte plus de 2 valeurs,

Capable de générer des graphiques

provenant de différentes sources,

Historique complet non sauvegardé,

Moins de charge sur la NMS.

2.

Page 33: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

Installation :

$ apt-get install rrdtool

Création de la base de données :

$ rrdtool create test.rrd

Mise à jour de la base (nouvelles entrées) :

$ rrdtool update test.rrd 1051481100:12345

1051481400:12357

1051481700:12363

Récupération des données :

$ rrdtool fetch test.rrd AVERAGE --start 1051481100 --end

1051485300

2.

Page 34: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

Création d’un graphique:$ rrdtool graph vitesse.png --start 1051481100

--end 1051485300

--imgformat PNG

DEF:vitesse=test.rrd:vitesse:AVERAGE

LINE2:vitesse#FF0000

Graphique résultant:

2.

Page 35: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

Plus simple,

Plus beau,

Fonctions Max, Min,

Average, Last,

Moins stressant pour le

serveur.

2.

Page 36: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

3.Qu’est ce que c’est ? Un moniteur de supervision active

Développé en 1999 (sous Licence GPL)

Successeur de NetSaint (en 2003)

A quoi ça sert ? Surveiller les services et les matériels

Journalisation

Alerte

Actions en réponse

Composé de 3 grandes parties : Le moteur de l’application

Une interface Web

Des plug-in

Page 37: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

3.Possibilités :

Supervision des services réseaux : (SMTP,

POP3, HTTP, NNTP, ICMP, SNMP, LDAP,…)

Supervision des ressources serveurs (charge du

processeur, occupation du disque dur, utilisation

de la mémoire paginée)

Interfaçage avec le protocole SNMP

Supervision à distance possible avec SSH ou un

tunnel SSL.

Plugins en scripts shell (Bash, ksh...), C++, Perl,

Python, Ruby, PHP, C#,...

Page 38: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

3.Possibilités (suite):

Hiérarchisation : différenciation entre un serveur

en panne et un serveur injoignable.

Remontée des alertes entièrement paramétrable

grâce aux plugins (alerte par email, SMS, etc...)

Acquittement des alertes par les administrateurs

Escalades des alertes

Limitation de visibilité, les utilisateurs peuvent

avoir un accès limité à quelques éléments.

Gestion des oscillations

Page 39: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

3.

http://www.01net.com/editorial/315435/administration-de-

reseaux/supervision-nagios-ouvre-la-voie-a-l-open-source/

Page 40: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

3.

Page 41: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

3.

Page 42: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

3.

Page 43: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

3.Nagios rencontre un succès flagrant auprès des

entreprise de par :

Son faible coût (… gratuit)

Son évolutivité (communauté très active)

Son adaptabilité (50aine de plugins en standard)

Prise en main rapide

A l’instar de grand outils de supervision payants tels que :

HP OpenView

Tivoli d’ IBM

Ou d’outils trop lourd tels que BigBrother

Page 44: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

3.

« Nagios est le couteau suisse de la

supervision réseau.

Il ne fait pas tout en standard, mais est

capable de tout faire.

C'est avant tout un ordonnanceur de scripts

de supervision »

Thomas Soupault

(Chef de projet chez Intrinsec)

Page 45: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

4. Les autres…

Logiciel de monitoring de serveurs en temps réel développé parQuest Software.

logiciel de supervision réseau basé sur la puissance destockage de données de RRDTool.

Il peut-être considéré comme le successeur de MRTG etégalement comme une interface d'utilisation de RRDTool.

Il existe bien évidemment d’autres dérivés des outils desupervision que nous avons présenté, développés pourdes besoin spécifiques puis mis en ligne pour lacommunauté.

Page 46: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

4. Les autres…

Page 47: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

II. Les Outils de Supervision

4. Les autres…

Page 48: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

III. CONCLUSION

Outils variés pour des besoins variés :

Contrôle et surveillance,

Résolutions automatiques de pannes (reboot de

serveurs, redémarrage de services),

Statistiques sur des périodes variés (heure, jour,

mois, année),

Vont permettre l’optimisation du Système

d’Information….

Outils indispensable au sein de toute structure

informatisée.

Page 49: Syslog et outils de supervision - Master Informatiquefnolot/Download/Cours/reseaux/m2pro/... · et outils de supervision ... Export des logs reçus vers un serveur MySQL, ... Syslog

BibliographieLivres :

Unix Guide de l’administrateur, Campus Press

Evi Nemeth, Garth Suyder, Scott Seebass et Trent R.Hein

Le System Linux, O’Reilly

Matthias Kalle Dalheimer et Matt Welsh

Les bases de l’administration système, O’Reilly

Aleen Frisch

Web :

Syslog : maîtrisez l'historique

http://okki666.free.fr/docmaster/articles/linux068.htm

RFC3164, The BSD Syslog Protocol

http://tools.ietf.org/html/rfc3164

http://www.nagios.org/

http://articles.mongueurs.net/magazines/linuxmag65-bis.html

http://doc.ubuntu-fr.org/nagios