Ir al contenido principal

vnstat :: monitor de trafico de red

En esta ocasión les traigo un pequeño manual de un excelente monitor que acabo de conocer.

Luego de ver lo que hace y la información que entrega, me quede  muy contento, ya que en mi trabajo es necesario tener cierta información de trafico que generan los equipos y mejor aun que también se puede tener una web donde te muestra la información y con todo y gráficas.

vnstat, mas que un comando, viene a ser un servicio que proporcionar información del trafico de red que consume un servidor.

Ya se revisar una placa de red en particular o varias. Este puede dar información en vivo (live), por hora, día, semana, mes y año.

No es un servicio de sniffer, sino que analiza la información de trafico del sistema proc y no se requiere (necesariamente) ejecutarse como root.

Instalación


Para instalar el comando/servicio en sistemas CentOS/Fedora/RedHat, es necesario instalar el repositorio de EPEL. Para instalar el repositorio ejecutar:

Para version 5, descargar epel-release-5.4
Para version 6, descargar epel-release-6.8

Una vez descargado instalar

# rpm -ivhU epel-release-5-4.noarch.rpm

Para quienes manejan Slackware, puedes descargar vnstat-1.11 y posterior instalar con:

# installpkg vnstat-1.11-i686-1cf.txz

Configuración


Una vez instalado lo que se requiere es crear la base de datos de vnstat para esto es necesario ejecutar:

# vnstat -u -i eth0

En caso de que tu placa de red sea diferente, poner a como esta definida.

Si se desea conocer mas datos de las opciones que maneja el comando puedes ver con man

# man vnstat

Puesta en marcha


Una vez creada la base de datos, puedes ver como se comporta tu tarjeta de red en vivo, para esto ejecutar:

# vnstat -l
Monitoring eth0...    (press CTRL-C to stop)

   rx:       0.12 kB/s     2 p/s            tx:       0.23 kB/s     1 p/s


 eth0  /  traffic statistics

                             rx       |       tx
--------------------------------------+----------------------------------------
  bytes                         1 kB  |          2 kB
--------------------------------------+----------------------------------------
          max              0.12 kB/s  |     0.23 kB/s
      average              0.09 kB/s  |     0.17 kB/s
          min              0.09 kB/s  |     0.09 kB/s
--------------------------------------+----------------------------------------
  packets                         26  |             9
--------------------------------------+----------------------------------------
          max                  2 p/s  |         1 p/s
      average                  1 p/s  |         0 p/s
          min                  1 p/s  |         0 p/s
--------------------------------------+----------------------------------------
  time                    17 seconds


Comenzara a mostrar el trafico que esta generando la misma y al presionar CTR+C, al final se dará un resumen
En CentOS/Fedora/RedHat existe un archivo con que se puede configurar para ejecución constante, el mismo lo encuentras en /usr/bin/vnstat.cron, en mi caso configure para que siempre se ejecute:

#vim /etc/crontab

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
* * * * * root /usr/sbin/vnstat.cron

# service crond restart
Parando crond:                                             [  OK  ]
Iniciando crond:                                           [  OK  ]
Con lo anterior queda en ejecución siempre.

Para instalar la pagina web con el frontend de vnstat hay que hacer los siguiente (se asume que se tiene instalado apache y ejecución)

# wget wget http://www.sqweek.com/sqweek/files/vnstat_php_frontend-1.5.1.tar.gz
# tar xvf vnstat_php_frontend-1.5.1.tar.gz
# mkdir -p /var/www/html/vnstat
# cp -av vnstat_php_frontend-1.5.1/* /var/www/html/vnstat/

Posterior hay que editar el archivo de configuración del web y cambiar las variables $language, $iface_list y $iface_title, algo como:

# # vi /var/www/html/vnstat/config.php

    $locale = 'en_US.UTF-8';
    $language = 'en';

    // list of network interfaces monitored by vnStat
    $iface_list = array('eth0');

    //
    // optional names for interfaces
    // if there's no name set for an interface then the interface identifier
    // will be displayed instead
    //    
    $iface_title['eth0'] = 'Internal';
    //$iface_title['sixxs'] = 'SixXS IPv6';
Una vez guardado, vas a tu navegador y poner la URL de tu servidor, ejemplo: http://192.168.1.10/vnstat, deberás ver algo como:




Aquí les dejo un vídeo donde pueden ver varios ejemplos:


Ahi tienen, y puedes modificar la web como deseen, en caso de lo que hagan, avisen :D.

Comentarios

Entradas más populares de este blog

Como montar particiones LVM en Linux

Como están lectores, reportandome después de varios meses fuera. Hace un par de días vi un howto que me gusto y quiero compartir. Nota: lo siguiente es una traducción, el original lo pueden ver el siguiente link: How to mount an LVM partition on Linux Introducción LVM es una herramienta de administración de volúmenes lógicos (particiones) la cual te permite administrar el espacio de disco usando la connotación de volúmenes lógicos y grupo de volúmenes. El mayor beneficio de usar LVM sobre las particiones clásicas es la flexibilidad en la asignación de almacenamiento para usuarios y aplicaciones sin verse limitado por el tamaño de los discos individuales. En LVM, el almacenamiento físico, en el cual se crean los volúmenes lógicos, son particiones tradicionales (/dev/sda1, /dev/sda2). Estas particiones deben ser marcadas como "volúmenes físicos" y etiquetadas como "Linux LVM", esto para ser usadas en LVM. Como no montar Unas vez que las particiones h

Configurando interfaces de red virtuales en Linux

Estimados, de nuevo en acción retomando mi rumbo. Les traigo un traducción de un howto que me llamo la atención y creo que es bueno tener información en castellano. Así que aquí esta: La entrada original la pueden tener aqui (si te gusta leer en ingles), comencemos. Introducción ¿Sabia que puedes asignar mas de una dirección IP a una única interfaz de red? Esta técnica es muy utilizada, por ejemplo cuando se trabaja con Apache y host virtuales, esto para permitir accesar al mismo servicio pero usando dos direcciones IP. Interfaz de red virtual temporal  El proceso de crear interfaces de red virtual en +GNU/Linux  es muy simple. Esto involucra una ejecución simple del comando ifconfig ifconfig eth0:0 123.123.22.22 El comando anterior creara una nueva interfaz de red virtual basada en la interfaz física de eth0 . Lo condición mas importante para crear una interfaz de red virtual es la interfaz física de red, como en nuestro ejemplo, eth0 debe existir. El ejemplo comple

Como leer/visualizar archivos utmp, wtmp y btmp en Linux

Lectores, les paso este "Como" de linux, algo que debe ser usado por cualquier sysadmin de Linux. Esperando aportar conocimiento, aqui les dejo. Introducción. En sistemas operativos Linux/Unix todo es registrado en algun lado (los conocidos logs). La mayoria de registros del sistema se almacenan en el directorio /var/log . El directorio contiene registros relacionados a distintos servicios y/o aplicaciones. En este directorio tenemos algunos archivos como utmp , wtmp y btmp . Estos archivos contienen todo el detalle de registro de inicio (login) y termino (logout) de sesiones de usuarios ya sea local, sistemas remoto, como estado en el sistema, tiempo en linea, etc. Informacion sobre los archivos utmp : te mostrara informacion completa del acceso de usuarios, la terminal que usa, termino de sesion, eventos del sistema y el estado actual del mismo, etc. wtmp : contiene el historio del archivo utmp btmp : registros solo intentos fallidos de sesion. Como no