Comment faire : Nmap, Wireshark, TCPdump, IPTraf, IPerf, Nast, Ettercap...
 Charge moyenne sur 1mn : 0.37 Charge moyenne sur 5mn : 0.36 Charge moyenne sur 15mn : 0.28




MRTG : supervision réseau via le protocole SNMP

  • MRTG : supervision réseau via le protocole SNMP
MRTG est un programme qui permet de créer des graphiques de l'activité de votre ordinateur. Ces graphiques sont sauvegardés sous forme de fichiers HTML.

Informations

Dates
  • Publication : Lundi 01 mars 2010
  • Modification : Jeudi 01 septembre 2011

Partager

Le but est bien entendu de rendre accessible ces graphiques depuis l'extérieur en utilisant un serveur web, comme Apache, ce qui permet de surveiller l'activité de l'ordinateur à distance, depuis un simple navigateur web.

Il faut dans un premier temps installer SNMP (Simple Network Management Protocol). Il s'agit d'un outil qui permet aux administrateurs réseau de gérer les équipements réseau et de diagnostiquer les problèmes de réseau, en local ou à distance.

Puis nous installerons MRTG (Multi Routeur Traffic Graph) pour lire et générer les graphs.

SNMP : Simple Network Management Protocol

Installer SNMP

001 aptitude update
002 aptitude install snmp

Editer le fichier /etc/snmp/snmpd.conf

001 vi /etc/snmp/snmpd.conf
001 #com2sec paranoid  default         public
002 com2sec readonly  default         public

puis redémarer le service

001 /etc/init.d/snmpd restart

MRTG : Multi Routeur Traffic Graph

Installer MRTG

001 aptitude install mrtg
Créer le fichier de configuration par défaut de MRTG
001 cfgmaker public@127.0.0.1 --global 'Language: French'  > /etc/mrtg.cfg
Parcourir le fichier /etc/mrtg.conf (je vous ai mis quelques options avec commentaire)
001 cat /etc/mrtg.conf
001 #######################
002 # Global Settings
003 RunAsDaemon: yes
004 
005 # Répertoire de destination des graphes, des fichiers de données (log,old), des pages html.
006 WorkDir:/var/www/mrtg/
007 
008 # On peut choisir le chemin où doit se trouver les fichiers html, png, log.
009 Htmldir: /var/www/mrtg/
010 Imagedir: /var/www/mrtg/images
011 Logdir: /var/www/mrtg/logs
012 
013 # Options générales
014 # growright, noinfo, transparent, unknaszero, bits, nopercent, growright, gauge
015 # défilement de droite à gauche, fond des graphes transparent, en cas de problème de poling le graphe tombe à zéro sinon MRTG prend la dernière valeur connnue et trace une ligne continue tant que MRTG n'arrive plus interroger l’équipement.
016 Options[_]:growright,transparent,unknaszero
017 
018 # Cela permet de supprimer les graphes voulus (y=yearly m=monthly w=weekly d=daily).
019 Suppress[_]: y
020 
021 #######################
022 # Cible : interface:communauté@IP
023 # Target correspond à ce que nous voulons interroger.
024 Target[string]: 1:Public@127.0.0.1
025 
026 # Options correspond aux options spécifiques du graphe et annule la ou les options générales spécifiées lors de la création du fichier de configuration.
027 Options[string]: growleft, nobanner, noinfo
028 
029 # Title correspond au titre de la page html générée.
030 Title[string]: Titre du graph
031 
032 # Normalement MRTG ajuste automatiquement la valeur maximale du graphe pour avoir la meilleure échelle possible. 
033 # Cette option permet en fait d'annuler cet automatisme et d'avoir un graphe fixe.
034 Unscaled[string]: dwym
035 
036 # Fixe la valeur maximale des graphes, cette valeur est en octets.
037 MaxBytes[string]: 1250000
038 
039 AbsMax[string]: 1250000
040 
041 # Si  vous voulez monter plus de 4 lignes par graphique.
042 Ytics[string]: 6
043 
044 # Cela permet d'ajuster les graphes, c'est à dire cela consiste à multiplier le graphe par une valeur.
045 YScale[string]: 1.25
046 XScale[string]: 1.5
047 
048 # Permet de mettre une légende explicite  à l'axe des y.
049 YLegend[string]: Packets /s
050 
051 # Cela consiste à définir la taille du graphe en pixel de 20 à 600 par axe.
052 YSize[string]: 150
053 XSize[string]: 600
054 
055 Legend1[string]: IN Packets /s
056 Legend2[string]: OUT Packets /s
057 LegendI[string]: IN P/s:
058 LegendO[string]: OUT P/s:  
059 
060 # Légende des valeurs des graphes.
061 ShortLegend[string]: P/s
Tester la génération des graphs
001 indexmaker --output /var/www/mrtg/index.html /etc/mrtg.cfg --nolegend
Ajouter à la crontab
001 crontab -e
001 0,5,10,15,20,25,30,35,40,45,50,55       * * * *         indexmaker --output /var/www/mrtg/index.html /etc/mrtg.cfg --nolegend 2>/dev/null 2>&1

Graphique sur les paquets reçus et envoyés

Créer le fichier de conf qui va bien /etc/mrtg/packets-in-out.cfg

MTRG ZW3B Traffic Analytics YEAR

001 vi /etc/mrtg/packets-in-out.cfg
001 #----------------eth0---------------
002 WorkDir: /var/www/mrtg
003 Target[eth0]: `perl -e '@a=split(/[:s]+/,qx(grep eth0 /proc/net/dev));printf "%.0fn%.0fn1neth0 trafficn",$a[2],$a[10];'`;
004 Options[eth0]: dorelpercent, growright, nobanner, noinfo, transparent
005 MaxBytes[eth0]: 2000000
006 AbsMax[eth0]: 10000000
007 kilo[eth0]: 1024
008 YLegend[eth0]: Bytes per second
009 ShortLegend[eth0]: B/s
010 Legend1[eth0]: Incoming Traffic in Bytes per second
011 Legend2[eth0]: Outgoing Traffic in Bytes per second
012 LegendI[eth0]: In:
013 LegendO[eth0]: Out:
014 Title[eth0]: Traffic Analysis for : eth0
015 PageTop[eth0]: <h1>Traffic Analysis for : eth0</h1>
016 #----------------end eth0---------------

Temps de latence

Il faut dans un premier temps faire un p'tit script /etc/mrtg/pinghost.sh

001 vi /etc/mrtg/pinghost.sh
001 #!/bin/sh
002 P=`ping  -c3 -q $1|grep avg|cut -d" " -f4`
003 MIN=`echo $P|cut -d"/" -f1`
004 MAX=`echo $P|cut -d"/" -f2`
005 echo $MAX
006 echo $MIN

On passe au fichier les droits d'execution pour l'utilisateur

001 chmod u+x /etc/mrtg/pinghost.sh

On peut maintenant y faire appel depuis MRTG

Créer le fichier de conf qui va bien /etc/mrtg/pinghost.cfg

001 vi /etc/mrtg/pinghost.cfg
001 #---------Ping HOSTEUR--------------------
002 WorkDir: /var/www/mrtg
003 Target[ping_zw3b]: `/etc/mrtg/pinghost.sh 217.16.4.49`
004 Options[ping_zw3b]: nopercent,growright,gauge,noinfo, nobanner
005 MaxBytes[ping_zw3b]: 10000
006 AbsMax[ping_zw3b]: 10000
007 YLegend[ping_zw3b]: Latence
008 ShortLegend[ping_zw3b]: ms
009 Legend1[ping_zw3b]: Latence max en ms
010 Legend2[ping_zw3b]: Latence min en ms
011 LegendI[ping_zw3b]: Latence Max:
012 LegendO[ping_zw3b]: Latence Min:
013 Title[ping_zw3b]: Ping sur www.zw3b.fr
014 PageTop[ping_zw3b]: <h1>Latence www.zw3b.fr</h1>
015 WithPeak[ping_zw3b]:wmy
016 Legend4[ping_zw3b]: Max de la latence min
017 Legend3[ping_zw3b]: Max de la latence max
018 #--------end ping-----------------------------

CPU

Créer le fichier de conf qui va bien /etc/mrtg/cpu.cfg

MTRG ZW3B CPU YEAR

001 vi /etc/mrtg/cpu.cfg
001 WorkDir: /var/www/mrtg
002 LoadMIBs: /usr/share/snmp/mibs/UCD-SNMP-MIB.txt
003 Target[localhost.cpu]:ssCpuRawUser.0&ssCpuRawUser.0:public@127.0.0.1+ ssCpuRawSystem.0&ssCpuRawSystem.0:public@127.0.0.1+
004 ssCpuRawNice.0&ssCpuRawNice.0:public@127.0.0.1
005 RouterUptime[localhost.cpu]: public@127.0.0.1
006 MaxBytes[localhost.cpu]: 100
007 Title[localhost.cpu]: CPU Load
008 PageTop[localhost.cpu]: Active CPU Load %
009 Unscaled[localhost.cpu]: ymwd
010 ShortLegend[localhost.cpu]: %
011 YLegend[localhost.cpu]: CPU Utilization
012 Legend1[localhost.cpu]: Active CPU in % (Load)
013 Legend2[localhost.cpu]:
014 Legend3[localhost.cpu]:
015 Legend4[localhost.cpu]:
016 LegendI[localhost.cpu]: Active
017 LegendO[localhost.cpu]:
018 Options[localhost.cpu]: growright,nopercent

Memory Usage

Créer le fichier de conf qui va bien /etc/mrtg/mem.cfg

001 vi /etc/mrtg/mem.cfg
001 LoadMIBs: /usr/share/snmp/mibs/HOST-RESOURCES-MIB.txt
002 Target[localhost.mem]: .1.3.6.1.4.1.2021.4.6.0&.1.3.6.1.4.1.2021.4.6.0:public@localhost
003 PageTop[localhost.mem]:Free Memory
004 WorkDir: /var/www/mrtg
005 Options[localhost.mem]: nopercent,growright,gauge,noinfo
006 Title[localhost.mem]: Free Memory
007 MaxBytes[localhost.mem]: 1000000
008 kMG[localhost.mem]: k,M,G,T,P,X
009 YLegend[localhost.mem]: bytes
010 ShortLegend[localhost.mem]: bytes
011 LegendI[localhost.mem]: Free Memory:
012 LegendO[localhost.mem]:
013 Legend1[localhost.mem]: Free memory, not including swap, in bytes

Memory Monitoring (Total Versus Available Memory)

Créer le fichier de conf qui va bien /etc/mrtg/memfree.cfg

001 vi /etc/mrtg/memfree.cfg
001 LoadMIBs: /usr/share/snmp/mibs/HOST-RESOURCES-MIB.txt
002 Target[server.memory]: memAvailReal.0&memTotalReal.0:public@localhost
003 Title[server.memory]: Free Memory
004 PageTop[server.memory]: < H1 >Free Memory< /H1 >
005 MaxBytes[server.memory]: 100000000000
006 ShortLegend[server.memory]: B
007 YLegend[server.memory]: Bytes
008 LegendI[server.memory]: Free
009 LegendO[server.memory]: Total
010 Legend1[server.memory]: Free memory, not including swap, in bytes
011 Legend2[server.memory]: Total memory
012 Options[server.memory]: gauge,growright,nopercent
013 kMG[server.memory]: k,M,G,T,P,X

Memory Monitoring (Percentage usage)

Créer le fichier de conf qui va bien /etc/mrtg/mempercent.cfg

001 vi /etc/mrtg/mempercent.cfg
001 LoadMIBs: /usr/share/snmp/mibs/HOST-RESOURCES-MIB.txt
002 Title[server.mempercent]: Percentage Free Memory
003 PageTop[server.mempercent]: < H1 >Percentage Free Memory< /H1 >
004 Target[server.mempercent]: ( memAvailReal.0&memAvailReal.0:publicy@localhost ) * 100 / ( memTotalReal.0&memTotalReal.0:public@localhost )
005 options[server.mempercent]: growright,gauge,transparent,nopercent
006 Unscaled[server.mempercent]: ymwd
007 MaxBytes[server.mempercent]: 100
008 YLegend[server.mempercent]: Memory %
009 ShortLegend[server.mempercent]: Percent
010 LegendI[server.mempercent]: Free
011 LegendO[server.mempercent]: Free
012 Legend1[server.mempercent]: Percentage Free Memory
013 Legend2[server.mempercent]: Percentage Free Memory

Disk Usage

MTRG ZW3B Disk Day

Créer le fichier de conf qui va bien /etc/mrtg/disk.cfg

001 vi /etc/mrtg/disk.cfg
001 LoadMIBs: /usr/share/snmp/mibs/HOST-RESOURCES-MIB.txt
002 Target[server.disk]: dskPercent.1&dskPercent.2:public@localhost
003 Title[server.disk]: Disk Partition Usage
004 PageTop[server.disk]: < H1 >Disk Partition Usage /home and /var< /H1 >
005 MaxBytes[server.disk]: 100
006 ShortLegend[server.disk]: %
007 YLegend[server.disk]: Utilization
008 LegendI[server.disk]: /home
009 LegendO[server.disk]: /var
010 Options[server.disk]: gauge,growright,nopercent
011 Unscaled[server.disk]: ymwd

Création des tâches à planifiées

001 echo $'#!/bin/shn/usr/bin/mrtg /etc/mrtg/packets-in-out.cfg' > /etc/cron.mrtg/packets-in-out
002 echo $'#!/bin/shn/usr/bin/mrtg /etc/mrtg/pinghost.cfg' > /etc/cron.mrtg/pinghost
003 echo $'#!/bin/shn/usr/bin/mrtg /etc/mrtg/cpu.cfg' > /etc/cron.mrtg/cpu
004 echo $'#!/bin/shn/usr/bin/mrtg /etc/mrtg/mem.cfg' > /etc/cron.mrtg/mem
005 echo $'#!/bin/shn/usr/bin/mrtg /etc/mrtg/memfree.cfg' > /etc/cron.mrtg/memfree
006 echo $'#!/bin/shn/usr/bin/mrtg /etc/mrtg/mempercent.cfg' > /etc/cron.mrtg/mempercent
007 echo $'#!/bin/shn/usr/bin/mrtg /etc/mrtg/disk.cfg' > /etc/cron.mrtg/disk

Générer les fichiers Index

001 #/usr/bin/indexmaker -–output=/var/www/mrtg/cpu-mem/index.html 
002 -–title=”Memory and CPU Usage ” 
003 -–sort=name 
004 -–enumerate 
005 /etc/cron.mrtg/cpu 
006 /etc/cron.mrtg/mem 
007 /etc/cron.mrtg/memfree 
008 /etc/cron.mrtg/mempercent 
009 /etc/cron.mrtg/disk
010 --columns=2  
011 --nolegend
001 #/usr/bin/indexmaker -–output=/var/www/mrtg/networks/index.html 
002 -–title=”Networks Traffic ” 
003 -–sort=name 
004 -–enumerate 
005 /etc/cron.mrtg//packets-in-out 
006 /etc/cron.mrtg/pinghost 
007 --columns=2  
008 --nolegend

L'option --columns=2 indique qu'on affiche 2 graphiques par ligne
L'option --nolegend indique qu'on affiche pas le bas de page publicitaire de MRTG

Générer le fichier mrtg.cfg

001 #cfgmaker –global “WorkDir: /var/www/mrtg/” 
002 –global “Options[_]: growright,bits” 
003 –ifref=ip 
004 public@localhost > /etc/mrtg.conf

Ajout de la tache planifiée toutes les 5mn

001 cat >> /var/spool/cron/crontabs/root
002 */5 * * * * /bin/run-parts /etc/cron.mrtg 1> /dev/null

En bref :

MRTG nous permet de diagnostiquer des équipements réseau afin d’assurer la pérennité d’un réseau, tels que :

  • Cpu (Unité de calcul centrale, généralement c'est le processeur principal sur les équipements d’interconnexions et sur les ordinateurs du réseau
  • Ram sur routeur et switch
  • Fichiers ouverts
  • Espace disque
  • Requêtes DNS (Domaine)

Il permet de faire de la surveillance sur un réseau afin de créer des statistiques. Un de ses avantages, c’est qu’il est gratuit. Cependant MRTG présente certains inconvénients :

  • Création de pages HTML pour chaque interface (inadapté aux grands sites).
  • Trop orienté SNMP
  • Graphiques à deux courbes
  • Pas de gestion des données non fournies

Il existe un autre outil de monitoring réseau appelé RRDTOOL, toujours développé par Tobias Oetiker lancé en 1997. Il présente quelques améliorations par rapport à MRTG :

  • Meilleure gestion des archives
  • Intégration de mathématiques pour gérer les nombres flottants
  • Gestion de plus de deux valeurs (contrairement à MRTG)
  • Graphiques provenant de sources multiples

Néanmoins comme avec MRTG, les pages HTML ne sont pas intégrées au logiciel.


LAB3W.ORJ Alias de O.Romain JAILLET-RAMEY (NOTIF LVL 7 - 42 ans) LAB3W.ORJ
CONTACT
- Web - STEAM - Monster - LinkedIn - Viadeo - DailyMotion - FACEBOOK - GOOGLE+ - Twitter
DROITS SITES : ZW3B.Admin
INSCRIPTION : Le samedi 06 janvier 1 (2001/01/06 15:31)
CONNEXION : il y a un peu plus de 11 jours (2019/05/15 17:08)
DERNIERE VISITE : il y a bientôt 7 jours (2019/05/20 04:13)

les réactions des ZW3B.Nautes (0 note)

Ajouter un commentaire

Avatar par default
Pseudo :
Email :
 
Ajouter la chaine de caractères (le code) ci-dessous dans le champ du dessous.
Captcha
Code :





Valid XHTML 1.0 Strict CSS Valide !

ipv6 ready