• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Docker Watch Your Lan (wyl)
#1
Hola

El otro día necesitaba un programa para saber que equipos están en mi red. 
En vez de instalarme un programa en mi ordenador, busqué un docker para que lo hiciese desde la nas.
Encontré a WYL Watch Your Lan  en Github

Lo que nos muestra el docker son los equipos, ip, mac, fabricantes y fecha de descubrimiento del equipo.

Para instalarlo, previamente hemos de saber la denominación de la tarjeta o agrupación de tarjetas de nuestra nas.
Para saberla escribiremos en la consola de la nas la orden 
Code:
ifconfig
Del resultado en pantalla localizamos aquella que muestra nuestra ip local
   

En la captura vemos que la ip de nuestra nas es 192.168.7.35 y que la tarjeta es denominada "bond0"  que en este caso es una agrupación.

Ahora para crear el docker ejecutaremos
Code:
docker run -d --restart always --name wyl -e "IFACES=bond0" -e "TZ=Europe/Madrid" --network=host -v /share/Public/wyl:/data/WatchYourLAN aceberg/watchyourlan

Según el comando anterior hemos definido:
  • el nombre del contenedor como "wyl"
  • la tarjeta que usará para buscar equipos en la bond0
  • definimos la zona horaria de Madrid
  • la carpeta persistente de datos está en carpeta compartida /share/Public/wyl , pero puede ser cualquiera otra compartida (por ejemplo /share/DockerData/wyl )

Una vez desplegado el docker sólo hemos de ir a dirección web de nuestra nas con el puerto 8840.
Para el caso del ejemplo sería ir a "http:\\192.168.7.35:8840"

Y veremos la web con el contenido de equipos detectados por nuestra tarjeta
   

Vemos que en algunos nos pone los nombres del equipo y en otros podemos ponerlos nosotros si previamente pulsamos sobre el botón de arriba a la derecha de "Edit names"
Si los equipo son habituales podemos activar si check de "Known". Y podemos aplicar luego filtros rápidos con los desplegables superiores

Podemos marcar los equipos conocidos activando el estado de known y posteriormente si filtramos y aplicamos el filtro unkonw veremos los nuevos equipos detectados

Si pulsamos sobre la MAC del un equipo nos muestra un historial de las detecciones del equipo.

Si pulsamos sobre config, veremos varias subsecciones donde podemos elegir colores de visionado, tarjetas ethernet a usar, tiempos de reescaneado,...
   

   
Incluso podemos guardar el historial a una base de datos  PostgreSQL.
   

   


Lo de los avisos a Telegram se hacen de la siguiente forma. En el campo de SHOUTRRR URL escribiremos la cadena siguiente:
Code:
telegram://token_del_bot@telegram/?Channels=ID_destino1,ID_destino2&notification=yes&preview=false&parseMode=html
donde token_del_bot es el token del bot que tengamos para las notificaciones.
y las ID_destino1 e ID_destino2 son los ID de los clientes receptores.

Esta cadena anterior puede definirse durante la creación del docker agregando 
Code:
-e "SHOUTRRR_URL=telegram://token_del_bot@telegram/?Channels=ID_destino1,ID_destino2&notification=yes&preview=false&parseMode=html"

Activando estas notificaciones , recibiremos mensajes cuando se detecte un equipo desconocido como en el ejemplo
   

Ni que decir tiene, que esta web no debemos exponerla a internet ya que muestra información se nuestros equipos que no debe publicarse.
Un saludo

Agur eta ondo ibili

Ganekogorta (TS-469Pro, TVS-673e, QBoat Sunny, TS-453Be, TR-002 y QHora-301w) Ʀɐɯ0η
  Reply
#2
Hola, los avisos por Telegram funcionan a través de Shoutrrr y normálmente los contenedores que lo utilizan ya lo llevan integrado y este no es una excepción, tan sólo tienes que añadir una variable para poder utilizarlo, esa variable se puede ver en este caso aquí:

https://github.com/aceberg/WatchYourLAN/...ompose.yml

A esa variable le tienes que poner la que se corresponde al bot de Telegram, la sintaxis se puede ver aquí:

https://containrrr.dev/shoutrrr/v0.8/services/telegram/
  Reply
#3
(04-11-2024, 03:06 PM)yeraycito Wrote: Hola, los avisos por Telegram funcionan a través de Shoutrrr y normálmente los contenedores que lo utilizan ya lo llevan integrado y este no es una excepción, tan sólo tienes que añadir una variable para poder utilizarlo, esa variable se puede ver en este caso aquí:

https://github.com/aceberg/WatchYourLAN/...ompose.yml

A esa variable le tienes que poner la que se corresponde al bot de Telegram, la sintaxis se puede ver aquí:

https://containrrr.dev/shoutrrr/v0.8/services/telegram/
Corregido el post original y agregado como hacerlo.

Si saco un rato, pongo un ejemplo de como comunicarlo con una postgresql para tener historiales mas largos de actividad.
Un saludo

Agur eta ondo ibili

Ganekogorta (TS-469Pro, TVS-673e, QBoat Sunny, TS-453Be, TR-002 y QHora-301w) Ʀɐɯ0η
  Reply




Users browsing this thread: 1 Guest(s)