This project provides a complete OpenVPN server deployment packaged as a Docker container, with an integrated EasyRSA certificate authority for automated public-key infrastructure management. It handles the full lifecycle of a VPN server, from initial PKI bootstrap and server configuration generation to client certificate issuance and revocation, all within a containerized environment.
The server is configured entirely through Docker environment variables, eliminating the need for manual configuration file editing. It supports time-based one-time password (TOTP) authentication as a second factor, adding an extra layer of security beyond certificate-based authentication. The container uses Docker volumes for persistent state, ensuring configuration and certificates survive container restarts and upgrades, and can be managed as a systemd service for automatic startup and failure recovery.
The toolkit includes utilities for generating single-file OpenVPN client configurations with embedded certificates for easy distribution, as well as tools for listing, revoking, and managing client certificates. It also provides operational features such as debug logging activation and server status reporting for monitoring connected clients and traffic statistics.