/fnm-fsgui

Flowspec GUI for FNM Adv.

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Flowspec-GUI: create Flowspec rules & deploy to FNM Adv.

Run it

Clone the git repository

git clone https://github.com/pirmins/fnm-fsgui.git

Create a Python virtual environment (developped with Python 3.11)

cd fsgui
python3 -m venv myenv

Activate the virtual environment

. myenv/bin/activate

Install the dependencies from requirements.txt

pip install -r requirements.txt

Define your own Fastnetmon API env. variables

export FNM_API_ENDPOINT="http://127.0.0.1:10007"
export FNM_API_USER=admin
export FNM_API_PASSWORD=password

Hardcoded defaults if no ENV VARs found are:

DEFAULT_API_ENDPOINT = "http://127.0.0.1:10007"
DEFAULT_API_USER = "fnmadmin"
DEFAULT_API_PASSWORD = "fnmpassword"

Create a Django superuser

python3 manage.py createsuperuser

Start the Django app with runserver

python3 manage.py runserver "0.0.0.0:8000"

GUI

Login page

Screenshot 2023-10-12 151459

Welcome page

Screenshot 2023-10-12 150155

Admin View

Admin Networks Panel (sees all networks allocated)

Screenshot 2023-10-12 150155

Admin Flowspec Panel (sees all flowspec rules created)

Screenshot 2023-10-12 151011

User View

User Networks page (sees only what networks he's been allocated)

Screenshot 2023-10-12 150354

User Flowspec panel (sees/can create flowspec rules for his allocated networks)

Screenshot 2023-10-12 150626