OpenVPN-Admin/README.md

76 lines
2.1 KiB
Markdown
Raw Normal View History

2014-02-12 10:59:56 +01:00
# OpenVPN Admin
2015-07-09 14:26:07 +02:00
## Summary
Administrate its OpenVPN with a web interface (logs visualisations, users managing...) and a SQL database.
2014-02-12 10:59:56 +01:00
2016-08-26 14:59:25 +02:00
![Previsualisation configuration](https://lutim.cpy.re/fUq2rxqz)
2016-09-12 10:47:17 +02:00
![Previsualisation administration](https://lutim.cpy.re/wwYMkHcM)
2016-08-26 14:59:25 +02:00
2014-03-19 21:53:24 +01:00
2015-07-09 14:26:07 +02:00
## Prerequisite
2014-03-21 21:47:01 +01:00
2015-07-09 14:26:07 +02:00
* GNU/Linux with Bash and root access
* Fresh install of OpenVPN
* Web server (NGinx, Apache...)
* MySQL
* PHP >= 5.5 with modules:
* zip
* pdo_mysql
2015-07-26 18:16:45 +02:00
* bower
2015-07-29 13:54:19 +02:00
* unzip
* wget
* sed
2016-08-24 16:56:06 +02:00
### Debian Jessie
````
# apt-get install openvpn apache2 php5-mysql mysql-server php5 nodejs unzip git wget sed npm
# npm install -g bower
# ln -s /usr/bin/nodejs /usr/bin/node
````
### Other distribution... (PR welcome)
2015-07-09 14:26:07 +02:00
## Tests
2014-03-19 21:53:24 +01:00
2015-07-09 14:26:07 +02:00
Only tested on Debian Jessie. Feel free to open issues.
2014-02-12 10:59:56 +01:00
## Installation
2014-03-21 21:47:42 +01:00
2015-07-09 14:26:07 +02:00
* Setup OpenVPN and the web application:
2014-03-21 21:47:42 +01:00
2015-07-12 10:32:43 +02:00
$ 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
2014-02-12 10:59:56 +01:00
2015-07-09 14:26:07 +02:00
* Setup the web server (Apache, NGinx...) to serve the web application.
2016-08-24 16:56:06 +02:00
* Create the admin of the web application by visiting `http://your-installation/index.php?installation`
2015-07-09 14:26:07 +02:00
## Usage
* Start OpenVPN on the server (for example `systemctl start openvpn@server`)
* Connect to the web application as an admin
* Create an user
2015-07-29 15:10:58 +02:00
* 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
2015-07-09 14:26:07 +02:00
* User run OpenVPN (for example `systemctl start openvpn@client`)
2015-07-12 10:29:43 +02:00
## Update
2015-07-12 10:32:43 +02:00
$ git pull origin master
# ./update.sh www_base_dir
2016-08-24 16:56:06 +02:00
2015-07-12 10:29:43 +02:00
## Desinstall
It will remove all installed components (OpenVPN keys and configurations, the web application, iptables rules...).
2015-09-14 17:15:58 +02:00
# ./desinstall.sh www_base_dir
2015-07-12 10:29:43 +02:00
2015-07-09 14:26:07 +02:00
## Use of
* [Bootstrap](https://github.com/twbs/bootstrap)
2016-09-11 18:48:59 +02:00
* [Bootstrap Table](http://bootstrap-table.wenzhixin.net.cn/)
* [Bootstrap Datepicker](https://github.com/eternicode/bootstrap-datepicker)
* [JQuery](https://jquery.com/)
* [X-editable](https://github.com/vitalets/x-editable)