MRTG Total

MRTG es una utilidad para monitorizar y generar graficos por medio de snmp. Para los que tengan como yo limite de consumo de trafico mensual, va muy bien tener un contador del total de consumo por dias y por meses.

Lo primero que tenemos que hacer es instalar los paquetes necesarios:

apt-get install mrtg libgd-graph-perl libgd-graph3d-perl snmpd

Una vez instalado, configuramos MRTG (/etc/mrtg.cfg):

#################################################
# Multi Router Traffic Grapher — Sample Configuration File
#################################################
# This file is for use with mrtg-2.5.4c

# Global configuration
WorkDir: /var/www/mrtg

#General title
Title[^]: Traffic Analysis for Atlantis

#We dont need Ipv6
EnableIPV6: no
#Count in bits, grow from right to left, log unknow data as zero
Options[_]: bits,growright,unknaszero

#Target to monitor
Target[atlantis]: 2:atlantis@localhost

#Page title
Title[atlantis]: Traffic Analysis for Atlantis
PageTop[atlantis]: <H1>Our 100mbps link to the outside world</H1>
#100mb
MaxBytes[atlantis]: 12500000
WithPeak[atlantis]: ymw
AbsMax[atlantis]: 1000000000000

#MRTG Total config (Title, Unit = M(Bytes))
#-#Total[atlantis]: Traffic Totals for Atlantis
#-#Total-Unit[atlantis]: M
#-#Total:Ratio[atlantis]: yes

Configurar SNMP (/etc/snmp/snmpd.conf):

com2sec local localhost atlantis
com2sec atlantis 66.111.52.100 atlantis

group MyROGroup v1 local
group MyROGroup v1 atlantis

view all-nibs included .1 80

access MyROGroup “” v1 noauth exact all-nibs none none

syslocation altantis
syscontact Root

Configuramos iptables para que no puedan acceder al SNMP desde fuera

#SNMPD Solo Local
$IPTABLES -A INPUT -s 127.0.0.1 -p tcp –dport 199 -j ACCEPT
$IPTABLES -A INPUT -s 127.0.0.1 -p udp –dport 161 -j ACCEPT
$IPTABLES -A INPUT -s 85.17.1.127 -p tcp –dport 199 -j ACCEPT
$IPTABLES -A INPUT -s 85.17.1.127 -p udp –dport 161 -j ACCEPT
$IPTABLES -A INPUT -s 0/0 -p tcp –dport 199 -j DROP
$IPTABLES -A INPUT -s 0/0 -p udp –dport 161 -j DROP

Descargamos mrtg_total y lo descomprimimos:

tar xvfj mrtg_total.tar.bz2
cd mrt_total
unzip mrtg_total.zip

El script importante es mrtg_total.pl, y hay que añadirle en la primera linea del fichero #!/usr/bin/perl

Ahora añadimos al crontab que ejecute mrtg_total, por ejemplo cada 3 horas (/etc/crontab):

0 */3 * * * root /path/to/mrtg_total.pl /etc/mrtg.cfg

Esto nos va a generar cada 3 horas una version actualizada del consumo en /var/www/mrtg, lo suyo es protegerlo con contraseña para que no pueda acceder todo el mundo. Creamos un ficheros .htaccess en /var/www/mrtg

AuthType Basic
AuthName “MRTG”
AuthUserFile /var/www/mrtg/.htpasswd
Require valid-user

Y ahora creamos el .htpasswd de la siguiente forma:

htpasswd -c .htpasswd mrtg

Ahora con todo configurado, tendremos:

http://nuestroserver/mrtg/atlantis.html (estadisticas de MRTG)

MRTG

http://nuestroserver/mrtg/atlantis.total.2006.html (estadisticas MRTG total)

Mrtg Total

Download MRTG_TOTAL

Leave a Comment

Name (required)

Mail (will not be published) (required)

Website

Comment

Powered by WP Hashcash