Faire fonctionner mrtg n'est pas simple. La documentation est abondante sur la façon de le compiler (qui est évidente, et qui n'a pas aujourd'hui de paquet pre-compilé ?), de l'installer, mais pour l'usage... pas grand chose. J'ai quand même réussi mon coup après une demi-journée de travail à lire les docs (en anglais). J'ai aussi été bien aidé par un site [http://www.linux-sottises.net/mrtg.php linux-sottises].

On this page... (hide)

  1.   1.  Snmp
  2.   2.  mrtg
  3.   3.  cron
  4.   4.  .htaccess
  5.   5.  Index
  6.   6.  Résultat

1.  Snmp

Mrtg utilise pour ses statistiques "snmp". J'ai lu ce que c'est, mais ça ne m'a pas servi à grand chose, je l'ai donc aussitôt oublié. Seulement il faut que snmp soit installé et configuré pour que mrtg fonctionne... ce n'est plus vrai. Maintenant mrtg fonctionne seul

Ca se fait dans yast, installez-le si ce n'est pas déjà fait, puis allez l'activer dans les niveaux d'exécution.

openSUSE 12.1: le logiciel s'appelle net-snmp, dans les niveaux d'exécution il y a bien snmp mais aussi snmptrap (?)

On trouve dans /etc/snmp.conf (12.1: /etc/snmp/snmp.conf) la ligne:

 rocommunity public 127.0.0.1

Qui indique où est défini l'utilisateur "community" ou "public" dont on parle tant dans la doc mrtg.

C'est un service, donc une fois activé par yast, il est disponible avec rcsnmp.

 12.1: systemctl status/start/stop snmpd.service

2.  mrtg

Il n'y a absolument aucune configuration par défaut de mrtg dans ma SuSE.

Il faut savoir que mrtg peut fonctionner en démon (mais je ne sais pas le faire) ou en tâche cron (ce que j'ai fait).

mrtg se contente de relever les informations transmises par snmp et, avec, de créer des pages web avec des images pour montrer les graphes. On se connecte dessus exactement comme sur n'importe quelle page web, il faut donc qu'elles soient dans l'espace du serveur web.

Attendu que je suis le seul destinataire de cette information, j'ai laissé le fichier de configuration avec les autres, protégés par un .htaccess.

J'ai donc créé un répertoire /srv/www/htdocs/mrtg et je me suis placé dedans. Ensuite il faut utiliser cfgmaker (fourni avec mrtg), mais ce n'est pas un programme interactif&nbsp! Donc, tapez :

 cfgmaker public@localhost > test

cfgmaker doit trouver le démon snmp, vous en informer, et créer le fichier de configuration de mrtg.

Ouvrez ce fichier et modifiez ce qui suit

 WorkDir: /srv/www/htdocs/mrtg

pour convenir à vos besoins.

Vous allez trouver dans ce fichier des "Interface_1".. 2... Vous allez reconnaitre des constantes et des titres html qui vont servir à créer vos pages, vous pouvez donc modifier ces valeurs à volonté, après avoir recopié ce fichier sous le nom mrtg.cf.

Si, maintenant, vous lancez

 mrtg mrtg.cf

(toujours dans le même répertoire), mrtg va vous créer vos pages web. Lancez-le plusieurs fois, il va aussi créer ses fichiers de travail et protester au début qu'il ne les trouve pas (c'est normal).

 12.1: "env LANG=C /usr/bin/mrtg mrtg.cf"

3.  cron

Pour que vos statistiques se créent régulièrement il faut une table cron, donc à exécution répétée. pour cela, ouvrez

 crontab -e

et collez-y la ligne suivante

 */5 * * * *  env LANG=C /usr/bin/mrtg /srv/www/htdocs/mrtg/mrtg.cf

en y mettant le chemin vers votre fichier de configuration.

y a plus qu'à regarder :-)

4.  .htaccess

Protégez votre répertoire mrtg par un .htaccess comme celui-çi :

 AuthType Basic
 AuthName "Accès réservé"
 AuthUserFile /srv/<chemin vers le fichier de mots de passe>
 Require user <votre login>

5.  Index

Si vous voulez un joli fichier d'index,

 indexmaker mrtg.cf > index.html

est là pour vous.

Libre à vous de le modifier ensuite, c'est du html...

6.  Résultat