cyberxml / OpenVPN-Admin

Install and administrate OpenVPN with a web interface (logs visualisations, users managing...)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

OpenVPN Admin

DO NOT INSTALL!!!

WARNING!!!

This version of the software has been created with deliberately injected exploitable vulnerabilities. DO NOT INSTALL

DO NOT INSTALL!!!

Summary

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

Previsualisation configuration Previsualisation administration

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
  • curl

Debian 8 Jessie

# apt-get install openvpn apache2 php5-mysql mysql-server php5 nodejs unzip git wget sed npm curl
# npm install -g bower
# ln -s /usr/bin/nodejs /usr/bin/node

Debian 9 Stretch

In order to install npm, stretch-backports need to be added to your sources.list.

# apt-get install -t stretch-backports npm nodejs
# apt-get install openvpn apache2 php-mysql mysql-server php-zip php unzip git wget sed curl
# npm install -g bower

CentOS 7

# yum install epel-release
# yum install openvpn httpd php-mysql mariadb-server php nodejs unzip git wget sed npm
# npm install -g bower
# systemctl enable mariadb
# systemctl start mariadb

Other distribution... (PR welcome)

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 /var/www www-data www-data
    
  • 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 /var/www

Desinstall

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

# ./desinstall.sh /var/www

Use of

DO NOT INSTALL!!!

About

Install and administrate OpenVPN with a web interface (logs visualisations, users managing...)

License:GNU Affero General Public License v3.0


Languages

Language:PHP 49.3%Language:Shell 27.4%Language:JavaScript 15.8%Language:Hack 5.4%Language:CSS 2.1%