1
0
mirror of https://github.com/donaldzou/WGDashboard.git synced 2024-07-02 15:30:42 +02:00
Simplest dashboard for WireGuard VPN written in Python w/ Flask
Go to file
Donald Cheng Hong Zou 2a9044086f Push Logo
2021-04-12 23:14:53 -04:00
img Push Logo 2021-04-12 23:14:53 -04:00
src v20210409 2021-04-09 00:07:37 -04:00
.gitignore v20210402 2021-04-02 20:48:00 -04:00
LICENSE Initial commit 2020-10-18 01:08:59 -04:00
README.md Update README.md 2021-04-07 17:25:21 -04:00
requirements.txt v20210409 2021-04-09 00:07:37 -04:00

Wireguard Dashboard

Monitoring Wireguard is not convinient, need to login into server and type wg show. That's why this platform is being created, to view all configurations in a more straight forward way.

💡 Features

  • Add peers in configuration
  • Manage peer names
  • Delete peers
  • And many more coming up! Welcome to contribute to this project!

📝 Requirement

  • Ubuntu 18.04.1 LTS, other OS might work, but haven't test yet.

  • ‼️ Make sure you have Wireguard installed.‼️ How to install?

  • Configuration files under /etc/wireguard

    Example .conf file

    [Interface]
    Address = 192.168.0.1/24
    SaveConfig = true
    PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -A FORWARD -o wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -D FORWARD -o wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
    ListenPort = 12345
    PrivateKey = ABCDEFGHIJKLMNOPQRSTUVWXYZ1234
    
    [Peer]
    PublicKey = HABCDEFGHIJKLMNOPQRSTUVWXYZ123123123123
    AllowedIPs = 192.168.0.2/32
    Endpoint = 8.8.8.8:12345
    
    ...
    
  • Python 3.7+ & Pip3

    $ sudo apt-get install python3 python3-pip
    

🛠 Install

1. Install Python Dependencies

$ python3 -m pip install flask tinydb

2. Install Wireguard Dashboard

$ git clone https://github.com/donaldzou/Wireguard-Dashboard.git
$ cd Wireguard-Dashboard/src
$ python3 dashboard.py

Access your server with port 10086 ! e.g (http://your_server_ip:10086)

3. Install with Production Mode (Optional), not tested yet. Proceed with caution.

$ cd Wireguard-Dashboard/src
$ export FLASK_APP=dashboard.py
$ export FLASK_RUN_HOST=0.0.0.0
$ export FLASK_ENV=development
$ export FLASK_DEBUG=0
$ flask run

🔍Example

Index Image Conf Image

🙌Contributors