Repolode
OpenVPN

OpenVPN/openvpn

An open source VPN daemon that creates secure tunnels between hosts using TLS-based authentication and encryption.

Open-source alternative to:Cisco AnyConnectPulse Secure

Stars
14,718
Forks
3,420
Open issues
228
Last commit
23 hours ago

What is it?

OpenVPN is a secure tunneling daemon that lets you create encrypted point-to-point or site-to-site connections, and remote-access VPNs, between machines. It is written in C and is distributed under the GNU General Public License version 2.

The project provides the core server and client daemon along with build instructions for Unix-like systems and Windows (via MinGW or MSVC). Configuration is handled through config files and command-line options, and the sample directory includes example configurations, a Perl script for customized certificate field checks via the --tls-verify option, and sample keys for testing only.

The easy-rsa certificate tooling and the tap-windows virtual network driver are maintained as separate subprojects, and Windows installers and Debian packages are built in a companion repository.

Key features

  • 01Creates encrypted tunnels between hosts using TLS-based authentication.
  • 02Supports custom certificate verification through the --tls-verify option.
  • 03Builds on Unix-like systems and on Windows with MinGW or MSVC.
  • 04Configured through config files and command-line options, with sample configurations included.

Use cases

  • Setting up a remote-access VPN so staff can reach internal networks securely.
  • Connecting two sites or networks with an encrypted tunnel.
  • Adding custom certificate checks to an existing TLS-based VPN deployment.

Quick start

  1. 1

    Download the latest release from the community downloads page

  2. 2

    Extract the source tarball

    tar -zxf openvpn-<version>.tar.gz
  3. 3

    Enter the source directory and run configure

    ./configure
  4. 4

    Build OpenVPN with make

    make

Things to know

  • Distributed under GPL version 2, a copyleft license.
  • Building on Windows requires the separate MinGW or MSVC process described in README.cmake.md.

In collections

Topics

FAQ

What is openvpn?
An open source VPN daemon that creates secure tunnels between hosts using TLS-based authentication and encryption. OpenVPN is a secure tunneling daemon that lets you create encrypted point-to-point or site-to-site connections, and remote-access VPNs, between machines. It is written in C and is distributed under the GNU General Public License version 2.
Is openvpn free to use? What license does it have?
openvpn is open source under the Other license. Check the license terms before using it in commercial products.
Is openvpn still maintained?
Actively maintained. The last commit to openvpn was on Oct 23, 2026.
What can I use openvpn for?
Setting up a remote-access VPN so staff can reach internal networks securely. Connecting two sites or networks with an encrypted tunnel. Adding custom certificate checks to an existing TLS-based VPN deployment.
How do I install openvpn?
Download the latest release from the community downloads page Extract the source tarball: tar -zxf openvpn-<version>.tar.gz Enter the source directory and run configure: ./configure Build OpenVPN with make: make
Where can I get openvpn?
The source code and installation instructions are on GitHub: https://github.com/OpenVPN/openvpn

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects