Darkstat: Un control básico de la red

Sin duda el Internet de las cosas ha entrado en nuestras vidas, ya sea con las modernas televisiones, las bombillas inteligentes, los electrodomésticos como las neveras o los hornos, y los portátiles, ordenadores de sobre mesa y equipos NAS como, por ejemplo, del que os hablé en su día, una cabina Synology. Todo ello, como si fuera un director de orquesta, junto al router, que se encarga de hacer de enlace con los océanos de Internet. Precisamente de controlar el tráfico que pasa por el router , que en mi caso se encarga también de cortafuegos, además del resto de dispositivos, es de lo que se encarga Darkstat, la estrella de esta entrada.

Realmente se encarga de muchas cosas, tanto de capturar el tráfico de red, calcular estadísticas de uso e incluso ofrecer reportes vía HTTP Entre sus características principales encontramos gráficas en tiempo real por hosts o puertos, un servidor web incorporado, resolución de DNS, es portable y ofrece soporte para IPv6

Trabajar con Darkstat

Para poder trabajar con la herramienta estamos de suerte, ya que en la mayoría de los repositorios se encuentra disponible. En mi caso he utilizado un vieja Raspberry Pi 2, que tenía por casa criando polvo, por lo que ya era hora de ponerla a funcionar. Dicho dispositivo lo tengo funcionando con la distribución Raspbian

Simplemente hemos de escribir:

sudo apt install darkstat

Esta herramienta recopila la información via libpcap y la envía una interfaz web,como he comentado antes. Los parámetros más importantes de la configuración lo tenemos ubicados en /etc/darkstat

Configurar la herramienta

Ya he indicado en el párrafo anterior que en /etc/darkstat tenemos los ficheros de configuración. El fichero principal es /etc/darkstat/init.cfg

Si queremos utilizarla configuración del fichero lo hemos de indicar como sigue:

# Turn this to yes when you have configured the options below.
START_DARKSTAT=yes

Además indicamos la interfaz a monitorizar, el fichero de log, el puerto a utilizar, entre otros parámetros.

Podemos encender el servicio de dos formas:

sudo /etc/init.d/darkstat start

O bien:

sudo service darkstat start

Podemos comprobar que efectivamente esta funcionando consultando el puerto por defecto que es el 666 (también puede ser el 667), con el comando lsof:

root@raspberrypi:/var/log# lsof -i :666
COMMAND   PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
darkstat 3313 nobody    8u  IPv4  26817      0t0  TCP localhost:666 (LISTEN)

Para acceder a la vista web, hemos de escribir en el navegador la IP del dispositivo más el puerto. Si queremos acceder al panel desde cualquier host, debemos indicarlo en el fichero de configuración comentando el parámetro «BINDIP»

Trabajando desde la interfaz web

Lo primero que vemos cuando accedemos son una serie de gráficas con información sobre las estadísticas de la interfaz seleccionada, de nuestro host, en este caso una Raspberry Pi 2

Muestra de uso de Darkstat por el puerto 666

Además, desde la pestaña, «hosts» podemos ver información sobre los hosts de nuestra red. Además de todas las conexiones hacia y desde Internet.

Información de los dispositivos de la red

En la tabla observamos la IP, el nombre del host  o la MAC. En esta vista no véis la MAC porque he deshabilitado la muestra de esta información en el fichero de configuración.  El resto de información hace relación con el tráfico de red. Si marcamos sobre uno de los hosts nos ofrecerá más información al detalle del dispositivo y su actividad.

Si queremos ampliar información sobre lo que está pasando en nuestra red, podemos utilizar más avanzadas como Wireshark o Tcmdump. Incluso cosas tan chulas y avanzas como Pi-hole.

Es similar a otras herramientas como Ntop y Ntopng, de la que ya hemos hablado en la web.

Para saber más: Darkstat