helps to manage wg connections in a client/server scenario
Find a file
2024-10-09 18:56:11 +02:00
static/css Merge remote-tracking branch 'origin/feat/css' 2024-10-07 14:41:34 +02:00
templates Merge remote-tracking branch 'origin/feat/css' 2024-10-07 14:41:34 +02:00
test feat: test 2024-10-09 18:44:53 +02:00
wg_connection_manager feat: test 2024-10-09 18:44:53 +02:00
wg_manager Merge remote-tracking branch 'origin/feat/css' 2024-10-07 14:41:34 +02:00
.env-dist first import 2024-10-06 12:56:12 +02:00
.gitignore Merge remote-tracking branch 'origin/feat/css' 2024-10-07 14:41:34 +02:00
LICENSE first import 2024-10-06 12:56:12 +02:00
manage.py first import 2024-10-06 12:56:12 +02:00
pyproject.toml feat: test wip 2024-10-08 23:37:00 +02:00
README.md first import 2024-10-06 12:56:12 +02:00
requirements-test.txt chore: requirements-test.txt 2024-10-09 18:56:11 +02:00
requirements.txt first import 2024-10-06 12:56:12 +02:00

WG-MANAGER

This simple Django web interface helps to manage wg connections in a client/server scenario. Users are allowed to create, enable and disable wg peers.

Warning
this program is alpha quality, not fully tested and can break your computer :D also it must run with root privileges :(

Quickstart

create a python venv:

python -m venv venv

activate it

. venv/bin/activate

install the requirements

pip install -r requirements

in wg_manager dir create your own settings.py:

from .settings_dist import *
# your customization here

or simply make a symbolic link:

ln -s settings_dist.py settings.py

copy .env-dist and create your own .env set the variable WG_INTERFACE according to the name of the wg interface you want to manage

create the sqlite db:

./manage.py migrate

create the superuser:

./manage.py createsuperuser

if you already have connections you can import them in the db with:

./manage.py sync

you can test with the integrated dev server:

./manage.py runserver

and then deploy it using a proper web server like gunicorn:

gunicorn wg_manager.wsgi

with a proper tls enabled reverse proxy before it.