OpenVPN is one of the most popular VPN protocols among VPN users. It’s both – a VPN protocol and software that uses VPN techniques to secure point-to-point and site-to-site connections.
OpenVPN is an open-source and free VPN option for those looking to protect their privacy. It uses the TLS/SSL protocol for key exchange and can travel through firewalls and NATs (Network Address Translators).
However, the administration of the OpenVPN users requires a certain level of skills with the Linux command line.
Related: 20 Basic Linux Commands for Beginners Explained with Examples
So, we’ve got good news for you if you’re seeking a graphical user interface (GUI) solution for creating OpenVPN users, certificates, and routes. OVPN-Admin gives you all that and more. You might be surprised by all it can do.
OpenVPN Web UI (OVPN-Admin)
OVPN-Admin is a simple web interface to manage OpenVPN users, their certificates & routes in Linux. It is open-source with its backend written in Go programming language and frontend based on Vue.js.
The software allows you to see your OpenVPN users in a web browser and perform tasks with a simple mouse click.
OVPN-Admin was initially developed for internal needs and used for years by Flant company, which is specialized in the service of infrastructure open source solutions based on Kubernetes. Fortunately, this spring, they decided it could benefit a wider community and made it open source by posting on GitHub.
Now every system administrator who has implemented OpenVPN can take advantage of a convenient and user-friendly web-based UI for the administration of OpenVPN users. Certainly, OVPN-Admin does the thing, and everyone is welcome to try it.
It’s important to note that OVPN-Admin uses external calls for bash
, coreutils
, and easy-rsa
; thus, Linux systems are only supported now.
Related: Top 5 Linux Shells That You Can Use in Your Daily Work
OVPN-Admin Features
- Adding OpenVPN users.
- Generating certificates for OpenVPN users.
- Revoking/restoring users’ certificates.
- Generating ready-to-use config files.
- OpenVPN web UI provides metrics for Prometheus, including the certificate’s expiration date, number of connected/total users, and information about connected users.
- Specifying CCD (Client Config Directory) for each user.
- Operating in a master/slave mode (syncing certs and CCD with other servers).
- Specifying/changing password for additional authorization in OpenVPN.
- Specify the Kubernetes LoadBalancer if it’s used in front of the OpenVPN server.
The Dashboard view is elegant, robust, and comes with a clean interface.
Installation
If you’re wondering how you can easily install this handy web-based UI to manage your OpenVPN users, the easiest way is by using Docker. First, of course, you need to have Docker and docker-compose pre-installed.
There is a ready-to-use docker-compose.yaml, so you can change/add the values you need and start it with a start.sh file. The OVPN-Admin Docker image is publicly available on Docker Hub.