README.md 1.53 KB
Newer Older
wannes-ds's avatar
wannes-ds committed
1 2 3
ISP-ng
======

Wannes's avatar
Wannes committed
4 5 6
##Toolstack for next-gen ISPs

Currently, this daemon aims to ease OpenVPN management (through OpenVPN's management channel), handling user registration, authentication
Wannes's avatar
Wannes committed
7
and the assigment of IP addresses from a pool (be it fixed or dynamic). It exposes a REST API, which allows you to add 
Wannes's avatar
Wannes committed
8
IP address pools, manage active connections etc.
Wannes's avatar
Wannes committed
9 10 11 12

**Build instructions**

1. Install JDK 8
Wannes's avatar
Wannes committed
13
2. Install Maven (apt-get install maven)
Wannes's avatar
Wannes committed
14 15
3. mvn clean install

16 17 18 19 20 21 22
For ubuntu:

    sudo add-apt-repository ppa:webupd8team/java
    sudo apt-get update
    sudo apt-get install oracle-java8-installer maven
    mvn clean install  # in the source code directory

23 24 25
**Run instructions**

1. Install JRE/JDK 8
26 27 28
2. Install jsvc (commons-daemon) and zookeeper
3. [Download the JS libraries](https://vpn.neutrinet.be/js.tar.gz) and extract them in the web/registration/js dir
4. Configure the OpenVPN MGMT channel and database in config.properties (see config.properties.default)
Wannes's avatar
Wannes committed
29
5. /usr/bin/jsvc -cp ISP-NG-VPN-jar-with-dependencies.jar -home /usr/lib/jvm/java-8-oracle/ -user ispng -pidfile /var/run/ispng.pid -cwd [config file dir]  be.neutrinet.ispng.VPN
30

Wannes's avatar
Wannes committed
31
This will auto-create the database tables and run Jetty embedded on https://[hostname]:[port].
32
However it is also possible to use another webserver to serve the static files (CORS headers are set).
Wannes's avatar
Wannes committed
33

Wannes's avatar
Wannes committed
34
**Install instructions**
Wannes's avatar
Wannes committed
35 36 37 38 39

1. Copy the supplied SystemD service file to your system directory (e.g. /lib/systemd/system on Debian 8)
2. systemctl reenable ispng

Above will auto-start ISPng after OpenVPN and network are available.