Одной из популярных реализаций технологии VPN с открытым кодом является OpenVPN. Эта программа попадает под лицензию GNU GPL и позволяет без внесения изменений в настройки соединять машины по типу клиенты-сервер или точка, установленные за NAT-файерволами. Разработчиком OpenVPN является Джеймс Йонан. Для создания безопасного управляющего канала программа использует бесплатную библиотеку OpenSSL. При этом в работе используется полный набор шифров, реализованный в этой библиотеке. Для большей безопасности OpenVPN может использовать авторизацию HMAC, а для повышения скорости шифрования — аппаратное ускорение. Сегодня программа широко используются на Unix-подобных системах OpenBSD, Solaris, FreeBSD, GNU/Linux, NetBSD, QNX, MacOS X, а также Windows. Варианты авторизации Программа позволяет производить аутентификацию нескольких видов: По логину и паролю. Для установления соединения нужен серверный сертификат, а клиентский может не создаваться. Сертификатная аутентификация. Этот метод позволяет производить наиболее гибкие настройки. По предустановленному ключу. Это наиболее простая реализация. Сеть Все сетевые операции в рамках OpenVPN проводятся либо через UDP, либо через TCP-порт. Программа работает через большинство прокси-серверов, в том числе HTTP, а также NAT и другие сетевые фильтры. Также есть возможность получения клиентом сетевых настроек от сервера, в частности, IP-адреса, параметров соединения и настроек маршрутизации. В технологии OpenVPN используется драйвер TUN/TAP, при помощи которого реализовано два вида сетевых интерфейсов: IP-туннель TUN (Layer 3-based) и Ethernet соединение TAP (Layer 2-based), а для сжатия передаваемых данных программа может использовать компрессию LZO. Версия 2.0 дает возможность создавать несколько туннелей одновременно, в отличие от предыдущей, создававшей лишь один туннель на процесс. Использование стандартизированных протоколов UDP и TCP позволяет OpenVPN конкурировать с программой IPsec в случае блокировки провайдером интернета протоколов VPN.