fclerg / inora

watch your LAN
GNU General Public License v3.0
0 stars 0 forks source link

Inora

This project allows to log the activity on a LAN, esecially connection/deconnection of devices on a Wifi Network. To achieve it, it won’t try to reach out to the the devices directly with tools such as ping, netcat or SNMP. Instead, it talks to the router directly. This solution has few advantages :

      High level and relatively simple with scrapping or API calls depending on the router
      Detecting all devices (eg. Including the ones that don’t response to ping requests)
      Getting info on both 2.4GHz and 5Ghz if the router got several access points

Alt text

Project components

The Server

It logs activity sent by the Gateway and exposes a RSS Feed with a secret URL. Subscribing to this feed allows to get notification of the activity on the LAN.

Running the Server

Prerequisites
Setting up the init script
sudo cp inora/Server/init_script/inora /etc/init.d/inora
sudo cp inora/Server/init_script/inora.default /etc/default/inora
sudo chmod +x /etc/init.d/inora
sudo chmod +x /etc/default/inora
Starting the server
/etc/init.d/inora start

The Gateway

It periodically queries the router and send the activity to the Inora Server. Routers currently supported are :

Prerequisites

Setting up the init script

For Ubuntu :

sudo cp inora/Gateway/init_script/inora.ubuntu /etc/init.d/inora
sudo cp inora/Gateway/init_script/inora.default /etc/default/inora
sudo chmod +x /etc/init.d/inora
sudo chmod +x /etc/default/inora

For Openwrt :

sudo cp inora/Gateway/init_script/inora.openwrt /etc/init.d/inora
sudo cp inora/Gateway/init_script/inora.default /etc/default/inora
sudo chmod +x /etc/init.d/inora
sudo chmod +x /etc/default/inora

In both cases, update /etc/default/inora to match with your environment.

Filtering and renaming devices

Use the devices.filter file to ignore some devices based on their MAC address. It allows to be notified of new connection only from new/suspicious devices. This file can also be used to change the hostname a device appears with on the LAN.

Here is an example :

[filters]
D0-87-E2-07-38-BB! = tablet_foo
C8-BC-C8-D9-57-81 = iPhone_jeanbar 
40-F3-08-87-48-7D! = myPhone

Devices with MAC address ending with a '!' are ignored. Other entries allow to rename a device based on its MAC address.

Starting the Gateway
/etc/init.d/inora start

Contribution