Monitorizar el tráfico de la red con un router OpenWRT

Una vez más llega el momento de escribir una entrada motivado por un pensamiento de mi vida diaria. Hace tiempo compré un par de cámaras chinas (Wanscam) con las que estuve jugando un tiempo y me llevó a realizar una aplicación para Windows Phone (puedes verla aquí).
Recientemente (y con todos los temas de espionaje que suenan) decidí ver que tipo de datos enviaban/recibían mis cámaras, para ello me propuse usar mi router para que guardará el trafico y poder analizarlo más adelante, dicho esto para este propósito vamos a instalar «tcpdump» para capturar el tráfico y guardarlo en un disco externo mediante el protocolo NFS para de esta forma aumentar el espacio disponible en nuestro router.

Lo primero que tenemos que hacer es entrar en nuestro Router y buscar e instalar tcpdump (en el momento de escribir este artículo se encuentra en la versión 4.2.1-3), yo lo he realizado todo el proceso mediante la interfaz web de «Luci», entrando en la pestaña de «System» –> «Software» –> y en la caja de texto de «Download and install package» ponemos el texto «tcpdump». Con esto ya tendríamos la primer parte conseguida.

Ahora el siguiente punto es configurar nuestro router con las librerias de NFS, para lo cual vamos a instalar (del mismo modo que hicimos con el tcpdump) los siguiente paquetes: nfs-kernel-server (1.2.6-1), nfs-kernel-server-utils (1.2.6-1), nfs-server (2.2beta47-3), nfs-utils(1.2.6-1). Entre paréntesis he ido poniendo la versión que he usado en mi configuración aunque si hay alguna más nueva no debería haber ningún problema.

Una vez tengamos todo instalado nos tenemos que meter al router a través de SSH para poder ejecutar el comando para montar el directorio que vayamos a usar con NFS:

mount -o nolock -t nfs [IP Servidor NFS]:/[RemoteDir] /[LocalDir]
mount -o nolock -t nfs 192.168.1.2:/Datos /mnt/Externo

El primer comando nos da un ejemplo de sintaxis, y en el segundo he montado a la ruta del router «/mnt/Externo» el directorio «/Datos» del servidor que tiene la IP 192.168.1.2

Ahora vamos a iniciar la captura del tráfico, lo primero que tenemos que mirar es que interfaz del router queremos capturar y después cual es la IP del host del que queremos el tráfico (en mi ejemplo será la IP de la cámara que quiero monitorizar)

tcpdump -D

En mi router tras este comando recibo las siguientes interfaces:

tcpdump

Entonces voy a capturar el tráfico que se encuentre en la interfaz 2 (br-lan) que es todo el tráfico de la LAN (obviamente las cámaras las tengo por cable, de tenerlas por wifi habría que capturar el tráfico de la interfaz 7)

tcpdump -i 2 -w /mnt/Externo/capturacamara.cap host 192.168.1.3

Y tras este comando comenzariamos a escribir en nuestro sistema de ficheros NFS los datos que provienen de la IP 192.168.1.3 (la cual para nuestro ejemplo es la cámara a monitorizar).

Una vez pasado el tiempo deseado podríamos parar el proceso y analizar con alguna herramienta el tráfico que hemos capturado (en mi caso uso wireshark para esta tarea).

Con esto termina el artículo, ahora bien, tras las pruebas realizadas a las cámaras he de comentar que he detectado que dos de ellas (con el firmware más nuevo) realizan intentos de conexión al servicio de «gotocamera.com» intentando resolver varias urls del tipo «client1.gotocamera.com», «client2.gotocamera.com», etc… Este servicio está ya cerrado y por ese motivo no funciona, pero es algo que no se puede desactivar y miedo me da que se podría conseguir si alguien compra ese dominio con «malas intenciones».

Referencias:
NFS
TCPDump

3 pensamientos en “Monitorizar el tráfico de la red con un router OpenWRT

  1. no hay manera de configurar router tp-lin tl-wr1043nd para movistar fbra le agracederia que me a lludara

    • ¿Que versión del router tienes? , lo pregunto ya que he visto que hay una versión 2 ahora y la he podido tener en mis manos y han cambiado varias cosas. Además hay una entrada donde hablo específicamente de la configuración de este router.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.