/openvpn-monitor

This is a web based OpenVPN monitor, that shows current connections and locations.

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

OpenVPN-Monitor is a simple python program to generate html to display the
status of an OpenVPN server, including all current connections. It uses the
openvpn management console. It typically runs on the same host as the openvpn
server, though does not necessarily need to.

Adding the following line to your openvpn connection will run the management
console on 127.0.0.1 port 5555:

   management 127.0.0.1 5555

For remote managment, refer to the openvpn man pages about how to secure access
to the management interface.

The example configuration file should give some indication of how to set site
name, add a logo, etc. You can also set the default location (latitude and
longitude) for google maps. If not set, it will default to Melbourne, Australia.

It can be run from the command line to test the html is generating correctly.

To run under apache, mod_python will probably need to be enabled using e.g.

   AddHandler cgi-script .py

and added to the virtualhost/directory you are using.


Quick Install on Debian/Ubuntu:
-------------------------------

cd /var/www
git clone https://github.com/furlongm/openvpn-monitor.git
aptitude install libapache2-mod-python python-geoip python-ipaddr
a2enmod python

add the following to /etc/apache2/sites-enabled/000-default

#    AddHandler cgi-script .cgi
    <Directory "/var/www/openvpn-monitor">
        Options +ExecCGI
        AddHandler cgi-script .py
        DirectoryIndex openvpn-monitor.py
    </Directory>

/etc/init.d/apache2 restart

cd /usr/share/GeoIP/
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
gunzip GeoLiteCity.dat.gz
mv GeoLiteCity.dat GeoIPCity.dat


LICENSE
-------

This software is licensed under the GPL, v3, a copy of which can be found in
the COPYING file.

Flags are created by Matthias Slovig (flags@slovig.de) and are licensed under
Creative Commons License Deed Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0).
See http://flags.blogpotato.de/ for more details.