Go to file
2016-08-25 12:02:58 +02:00
css Update tables : use bootstrap tables, x-editable, bootstrap 2016-08-25 12:02:58 +02:00
include Update tables : use bootstrap tables, x-editable, bootstrap 2016-08-25 12:02:58 +02:00
installation SECURITY: Avoid simple sql injection when login in openvpn 2016-01-20 21:06:09 +01:00
js Update tables : use bootstrap tables, x-editable, bootstrap 2016-08-25 12:02:58 +02:00
sql Big refresh 2015-07-09 21:19:54 +02:00
.bowerrc Big refresh 2015-07-09 21:19:54 +02:00
.gitignore Big refresh 2015-07-09 21:19:54 +02:00
bower.json Update tables : use bootstrap tables, x-editable, bootstrap 2016-08-25 12:02:58 +02:00
desinstall.sh Change the usage with the new name too 2015-08-21 22:55:43 +02:00
index.php Update tables : use bootstrap tables, x-editable, bootstrap 2016-08-25 12:02:58 +02:00
install.sh rename client.conf to client.ovpn 2015-12-13 02:20:44 +01:00
LICENSE.md Create LICENSE.md 2014-02-12 10:55:21 +01:00
README.md Improve README presentation 2016-08-24 16:56:06 +02:00
update.sh Update tables : use bootstrap tables, x-editable, bootstrap 2016-08-25 12:02:58 +02:00

OpenVPN Admin

Summary

Administrate its OpenVPN with a web interface (logs visualisations, users managing...) and a SQL database.

Previsualisation

Prerequisite

  • GNU/Linux with Bash and root access
  • Fresh install of OpenVPN
  • Web server (NGinx, Apache...)
  • MySQL
  • PHP >= 5.5 with modules:
    • zip
    • pdo_mysql
  • bower
  • unzip
  • wget
  • sed

Tests

Only tested on Debian Jessie. Feel free to open issues.

Installation

  • Setup OpenVPN and the web application:

    $ cd ~/my_coding_workspace
    $ git clone https://github.com/Chocobozzz/OpenVPN-Admin openvpn-admin
    $ cd openvpn-admin
    # ./install.sh www_base_dir web_user web_group
    
  • Setup the web server (Apache, NGinx...) to serve the web application.

  • Create the admin of the web application by visiting http://your-installation/index.php?installation

Usage

  • Start OpenVPN on the server (for example systemctl start openvpn@server)
  • Connect to the web application as an admin
  • Create an user
  • User get the configurations files via the web application (and put them in /etc/openvpn)
  • Users on GNU/Linux systems, run chmod +x /etc/openvpn/update-resolv.sh as root
  • User run OpenVPN (for example systemctl start openvpn@client)

Update

$ git pull origin master
# ./update.sh www_base_dir

Desinstall

It will remove all installed components (OpenVPN keys and configurations, the web application, iptables rules...).

# ./desinstall.sh www_base_dir

Use of