{"id":642,"date":"2009-05-16T17:48:00","date_gmt":"2009-05-16T17:48:00","guid":{"rendered":"https:\/\/sweetweb.blog\/?p=642"},"modified":"2023-08-06T18:09:08","modified_gmt":"2023-08-06T18:09:08","slug":"monitorer-sa-livebox-avec-munin","status":"publish","type":"post","link":"https:\/\/sweetweb.blog\/index.php\/2009\/05\/16\/monitorer-sa-livebox-avec-munin\/","title":{"rendered":"Monitorer sa Livebox avec Munin"},"content":{"rendered":"\n

R\u00e9cup\u00e9rer quelques informations de votre livebox<\/strong>, comme sa consomation en ram, son traffic pour g\u00e9n\u00e9rer des graphiques sous munin<\/strong>.
Sa faisait depuis un moment que je voulais connaitre mon traffic mensuel du reseau de mon chez moi, chose faite !<\/p>\n\n\n\n

Ce tutoriel est consacr\u00e9 \u00e0 la livebox Sagem F@ST3202 Livebox1.<\/p>\n\n\n\n

Un peu d\u2019histoire sur la livebox Sagem<\/h1>\n\n\n\n

La livebox, enfin \u00ab les \u00bb vu qu\u2019il y en a plusieurs, ici je vais parl\u00e9 de la livebox Sagem F@ST3202 Livebox1.
Je ne connais pas les autres malheureusement, elle date celle-ci. je l\u2019ai depuis 2004 si je dit pas de b\u00eatise.<\/p>\n\n\n\n

Pendant ces 5 ans j\u2019ai du voir 2 versions de firmware, actuellement je poss\u00e8de la version 26014A.<\/p>\n\n\n\n

Munin et un serveur linux avant tout !<\/h1>\n\n\n\n

Dans ce tutoriel, pour que sa fonctionne il vous faut une machine sous linux en locale avec munin<\/strong> d\u2019install\u00e9 et qui tourne de pr\u00e9f\u00e9rence 24h\/24, pour ma part j\u2019utilise une EEEbox<\/strong> de asus en temps que serveur @ home.
J\u2019en parlerai plus en d\u00e9tail dans un autre billet.<\/p>\n\n\n\n

Malgr\u00e8s les posibilit\u00e9s de la livebox, je ne suis pas un geek fou ! J\u2019ai pas cherch\u00e9 \u00e0 installer munin<\/strong> dessus, je crois pas que sa soit possible de toute fa\u00e7on car les commandes du shell son plut\u00f4t limit\u00e9.
Oui ! j\u2019ai bien dit shell. En cherchant un peu sur le net j\u2019ai d\u00e9couvert un blog avec plein de truc et astuce au sujet de la livebox. Pour les curieux voici le blog : http:\/\/liveboxsagem11.centerblog.net<\/a>.<\/p>\n\n\n\n

Vous allez vous aper\u00e7evoir que les developpeurs d\u2019orange ont pas mal brid\u00e9 l\u2019acc\u00e8s via telnet mais aussi l\u2019interface web.
Nous allons commenc\u00e9 par d\u00e9brid\u00e9 l\u2019acc\u00e8s root.<\/p>\n\n\n\n

L\u2019antre de la livebox<\/h1>\n\n\n\n

Ouvrez votre naviguateur, pour acc\u00e8der \u00e0 l\u2019interface web de votre livebox.
En g\u00e9n\u00e9ral il suffit d\u2019y acc\u00e8der via cette adresse ip -> 
http:\/\/192.168.1.1<\/a>
Connectez vous, puis dans votre barre d\u2019adresse copier\/coller ceci:<\/p>\n\n\n\n

javascript:mimic_button('goto: 70..', 0)<\/code><\/pre>\n\n\n\n

Via cette page vous allez pouvoir \u00e9diter la configuration de votre livebox, commencez par sauvegarder cette configuration sous le nom livebox.conf.
Une fois que s\u2019est fait, ouvrez le fichier livebox.conf \u2013 et recherchez \u00ab (username(root)) \u00bb<\/p>\n\n\n\n

Vous devriez trouver ce genre de paragraphe :<\/p>\n\n\n\n

(username(root))\n(password(&87;&26;&22;&84;))\n(full_name(root))\n(email())\n(permissions\n(mgt(1))\n(superuser(0))\n(readonly(0))\n(fs(1))<\/code><\/code><\/pre>\n\n\n\n

La modification s\u2019effectue ici \u00ab superuser(0) \u00bb nous allons changer sa valeur par 1 pour donner les droits de super utilisateur \u00e0 l\u2019utilisateur root. Enregistrez votre fichier, retourner sur votre naviguateur web puis cliquez sur \u00ab charger le Fichier de Configuration \u00bb et s\u00e9lectionnez votre fichier livebox.conf.<\/p>\n\n\n\n

Validez les changements, puis pour v\u00e9rifier si tout est bien op\u00e9rationnel ouvrez votre invite de commande (windows + r \u2013> cmd)<\/p>\n\n\n\n

telnet 192.168.1.1<\/code><\/code><\/pre>\n\n\n\n

un login et un mot de passe vous seront demand\u00e9 :
login :<\/strong> root
pass :<\/strong> 1234<\/p>\n\n\n\n

original hmm ? \":D\"<\/p>\n\n\n\n

une fois connect\u00e9 faite un simple :<\/p>\n\n\n\n

ls<\/code><\/pre>\n\n\n\n

Si vous voyez au moins \u00ab ifconfig<\/strong> \u00bb et \u00ab meminfo<\/strong> \u00bb c\u2019est que vous avez les droits superuser.<\/p>\n\n\n\n

Les choses s\u00e9rieuses<\/h1>\n\n\n\n

Passons aux plugins munin<\/strong>, je me suis inspir\u00e9 du script de bodman visible ici http:\/\/bodman.wordpress.com\/\u2026\/aller-plus-loin-avec-une-livebox\u2026 pour faire transiter les infos<\/a>
Sa m\u2019a permi de d\u00e9couvrir perl par la m\u00eame occasion.<\/p>\n\n\n\n

Pour une raison de clart\u00e9, j\u2019ai s\u00e9par\u00e9 les plugins munin<\/strong>, des scripts qui r\u00e9cup\u00e8re les informations entre la livebox et le serveur.<\/p>\n\n\n\n

Ils vous faudra donc t\u00e9l\u00e9charger ces scripts :
adsl_livebox_traffic.pl<\/a>
adsl_livebox_mem.pl<\/a><\/p>\n\n\n\n

Placez les sur votre serveur, pour ma part je les ai mit dans \/home\/scripts\/
Pour fonctionner nous allons devoir leur donn\u00e9 le droit d\u2019\u00eatre execut\u00e9.<\/p>\n\n\n\n

chmox +x \/home\/scripts\/adsl_livebox_mem.pl<\/code>
chmox +x \/home\/scripts\/adsl_livebox_traffic.pl<\/code><\/code><\/pre>\n\n\n\n

adsl_livebox_mem.pl :<\/strong>
On se connecte via telnet \u2013> on entre dans le shell puis on effectue un ifconfig de l\u2019interface br0, pour la ma part br0 regroupe l\u2019ensemble du traffic internet et local, je peux pas confirmer si c\u2019est comme \u00e7a sur toutes les livebox.<\/p>\n\n\n\n

adsl_livebox_traffic.pl :<\/strong>
Ici on effectue toujours dans le shell \/proc\/meminfo qu\u2019on recupere et qu\u2019on stockera dans un fichier sur le serveur linux, le chemin par default du fichier est situ\u00e9 \/home\/scripts\/cache\/livebox_meminfo, pensez \u00e0 le modifier si vous ne gardez pas la m\u00eame arborescence que moi ! Celui-ci je l\u2019execute non pas via le plugin munin<\/strong> mais via une tache cron toutes les 5 minutes.
Pour cr\u00e9er cette tache :<\/p>\n\n\n\n

crontab -e<\/code><\/pre>\n\n\n\n

et ajouter<\/p>\n\n\n\n

*\/5 * * * * perl \/home\/scripts\/adsl_livebox_mem.pl<\/code><\/pre>\n\n\n\n

Voil\u00e0 d\u00e9j\u00e0 pour la partie transit on va dire.<\/p>\n\n\n\n

Passons aux plugins pour munin<\/strong> :
livebox_bandwidth<\/a>
livebox_mem<\/a><\/p>\n\n\n\n

Copiez ces deux fichiers dans \/usr\/share\/munin\/plugins puis rendez les executables<\/p>\n\n\n\n

chmox +x \/usr\/share\/munin\/plugins\/livebox_bandwidth<\/code>
chmox +x \/usr\/share\/munin\/plugins\/livebox_mem<\/code><\/code><\/pre>\n\n\n\n

Pensez \u00e0 les \u00e9diter ! Pour livebox_bandwidth il vous faut indiquer le chemin du fichier adsl_livebox_mem.pl<\/strong>, si vous avez gard\u00e9 mon arborescence vous n\u2019avez pas besoin d\u2019effectuer cette modification.
Pour le fichier livebox_mem, j\u2019ai repris le script memory de munin<\/strong>, vu que les donn\u00e9es sont sensiblement les m\u00eame, il faut juste indiqu\u00e9 le chemin du fichier cache qui est g\u00e9n\u00e9r\u00e9 par \/home\/scripts\/adsl_livebox_mem.pl<\/strong>
Si vous avez gard\u00e9 mon arborescence vous n\u2019aurez pas besoin de le modifi\u00e9.<\/p>\n\n\n\n

Il faut ensuite activer les plugins munin<\/strong> en cr\u00e9ant un lien symbolique :<\/p>\n\n\n\n

ln -s \/usr\/share\/munin\/plugins\/livebox_bandwidth \/etc\/munin\/plugins<\/code>
ln -s \/usr\/share\/munin\/plugins\/livebox_mem \/etc\/munin\/plugins<\/code><\/code><\/pre>\n\n\n\n

Puis red\u00e9marrer munin<\/strong><\/p>\n\n\n\n

\/etc\/init.d\/munin-node restart<\/code><\/pre>\n\n\n\n

les modifications prendront effet au bout de quelques minutes.<\/p>\n\n\n\n

Sa donne quoi ?<\/h1>\n\n\n\n