NetSec
NetSec copied to clipboard
Python module to analyze devices connected to the router and alert accordingly.
Platform Supported
Deployments
NetSec (Network Security)
NetSec is a tool to analyze devices connecting to the router and alert accordingly when a new device is connected.
This app can display and store intruders' IP address, MAC address, and Block the device.
Blocking device feature is currently available only for
Netgear
router users.
Kick off
Install
python3 -m pip install NetSec
Initiate
from netsec import network_monitor, SupportedModules
if __name__ == '__main__':
# SupportedModules.att # for AT&T users
# SupportedModules.netgear # for any network using Netgear router
network_monitor(module=SupportedModules.att, init=True) # Create snapshot
network_monitor(module=SupportedModules.att, init=False) # Scan for threats and alert
Notifications will not repeat within an hour.
ENV Variables
Environment variables are loaded from a .env
file.
-
ROUTER_PASS - Router password. Only for
Netgear
users. - GMAIL_USER - Gmail account username to send and email.
- GMAIL_PASS - Gmail account password to send and email.
-
RECIPIENT - Email address to which
NetSec
alerts should be sent. -
PHONE - To send an SMS notification - Example:
1234567890
Coding Standards
Docstring format: Google
Styling conventions: PEP 8
Clean code with pre-commit hooks: flake8
and
isort
Release Notes
Requirement
python -m pip install gitverse
Usage
gitverse-release reverse -f release_notes.rst -t 'Release Notes'
Linting
PreCommit
will ensure linting, and the doc creation are run on every commit.
Requirement
pip install sphinx==5.1.1 pre-commit recommonmark
Usage
pre-commit run --all-files
Pypi Package
https://pypi.org/project/NetSec/
Runbook
https://thevickypedia.github.io/NetSec/
License & copyright
© Vignesh Rao, NetSec
Licensed under the MIT License