Enterprise Distributed OpenVPN Server

Virtualize your private networks across datacenters and provide simple remote access in minutes
Demo

Simple Virtual Private Networks

Create your own cloud vpn with complex site-to-site links, gateway links and provide local network access to remote users. Protect your network traffic and remote users connecting over public connections with secure encryption. All from a simple web interface

AWS VPC Peering

Amazon

Interconnect AWS VPC networks across AWS regions and provide reliable remote access with automatic failover that can scale horizontally

Explore AWS integration

Single Sign-On

Okta

Securely deploy remote access to thousands of users using their existing company account with support for several single sign-on providers and protocols

See all providers

Infrastructure

Infrastructure

Quickly scale to thousands of users with high availability in a cloud environment without the need for expensive proprietary hardware

Learn more

Platform and Device Support

Ubiquiti EdgeMax

Pritunl supports all OpenVPN clients and has official clients for several devices and platforms

View all platforms

Advanced Security

Pritunl is the most secure VPN server available and the only VPN server to offer up to five layers of authentication

See all security features

Aviatrix Alternative

A faster and more secure alternative to Aviatrix with more features and no per-connection pricing

Open Source Alternative

Pritunl is the best open source alternative to proprietary commercial vpn products such as Pulse Secure and Pertino. Create larger cloud vpn networks supporting thousands of concurrent users and get more control over your vpn server without any per-user pricing

Sponsored By

Open Source

All source code for Pritunl is publicly available on GitHub. Allowing for complete transparency and customization.

Free to Use

Free and open source alternative to Pulse Secure and Pertino. No registration or credit card necessary.

Easy Configuration

All configuration is done from a web interface allowing easy management of large organizations and complex configurations.

Security

All traffic between clients and the server is encrypted. Optional two-step authentication is available using Google Authenticator.

OpenVPN Protocol

Pritunl is built with the OpenVPN protocol and any existing client that supports OpenVPN can be used to connect to a Pritunl server.

REST API

Easily integrate and configure Pritunl with other services using the REST API. Documentation is available in the platforms section.

Examples

Single User

View Tutorial

IPv4 to IPv6 Connection

View Tutorial

Secure Access to Private Network

View Tutorial

Site-to-Site Configuration

View Tutorial

VPN Router with EdgeMax

View Tutorial

VPN Gateway with EdgeMax

View Tutorial

Router+VPN Gateway with EdgeMax

View Tutorial

Site-to-Site VPN with EdgeMax

View Tutorial

Site-to-Site Gateway with EdgeMax

View Tutorial

Redundant Gateway with EdgeMax

View Tutorial

Google Authentication

View Tutorial

Duo Authentication

View Tutorial

Distributed and Scalable

Scale Easily

Pritunl servers can be easily distributed across multiple servers and different datacenters for improved performance, high availability and automatic failover when an instance fails.

Simple Distribution

All server communication and interconnecting is done with MongoDB allowing servers to be quickly connected without having to modify firewalls for inter-server communication.

High Availability

All Pritunl servers are equal in the cluster and can run independently in the event of other instances failing.

Distributed and Scalable

Subscription Plans

Pritunl is free to use with optional monthly subscriptions available to purchase for additional features. The enterprise license may be used on all the servers in the cluster and does not require a individual license for each server.

Free

  • Single server
    Run a single Pritunl instance
  • Unlimited users
    No limit on the number of users created or users connected
  • Unlimited devices
    No limit on the number of devices that each user has connected

$0/month

Premium

  • Single server
    Run a single Pritunl instance
  • Unlimited users
    No limit on the number of users created or users connected
  • Unlimited devices
    No limit on the number of devices that each user has connected
  • Port forwarding
    Forward ports to vpn clients
  • Gateway links
    Create a gateway link to route traffic for a local network to a vpn client. Allowing the vpn clients to access the remote network that is available to the linked vpn client
  • Failover gateway links
    Connect multiple gateway links to a Pritunl server and when a link goes down another available link will automatically be used
  • Bypass secondary auth
    Per-user option to bypass secondary authentication such as two-factor authentication. For server users that can't provide a two-factor code
  • Chromebook support
    Easily connect Chromebook users with ChromeOS compatible vpn profiles
  • Configuration sync
    When clients connect with a Pritunl client, vpn setting changes such as port/protocol will be updated to allow the client to connect without needing to download a new configuration
  • Email user keys
    Email users a link to download vpn profiles using a configured SMTP server
  • Additional themes
    Change the interface to light or dark theme

$10/month

Subscribe

Enterprise

  • All Premium features
    All of the features included with a Premium subscription
  • Unlimited servers
    No limit on the number of Pritunl instances in a single Pritunl cluster
  • Single sign-on
    Single sign-on with SAML, Google Apps, Duo Security and Radius
  • Automatic failover
    When a Pritunl instance fails the vpn servers running on the instance will automatically failover to another available Pritunl instance
  • Replicated servers
    Replicate a vpn server accross multiple Pritunl instances to easily scale horizontally to handle more user connections
  • AWS VPC integration
    Integrate with AWS VPC to allow Pritunl to dynamically control the VPC routing table
  • Site-to-site VPN
    Easily create a site-to-site link between two Pritunl instances without any complicated configuration
  • Server route NAT control
    Enable or disable NAT for server routes
  • DNS mapping
    Map connected vpn clients to dns domains such as user0.org0.vpn using a custom dns server that runs along with the Pritunl server
  • DNS forwarding
    Forward dns queries to a dns server on a remote network such as a consul server on an AWS VPC
  • Monitoring
    Monitor server and user metrics with Prometheus and Datadog
  • Advanced auditing
    Optional advanced auditing of user and administrator related events for improved security and intrusion detection
  • Bridged VPN mode
    Create tap servers that bridge the vpn clients to the servers local network interface. Allowing vpn clients to get an ip address on the servers local network
  • Multiple administrators
    Allow multiple administrators to manage the Pritunl server
  • User pin policy
    Control over requiring users to set a pin before they are able to connect to a vpn server
  • API access
    Manage Pritunl cluster using RESTful API with support for multiple API keys
  • Long term subscriptions
    Contact support for long term subscriptions
  • Education discount
    Contact support for public education discount

$50/month

$600/year

Subscribe

Support Plan

Priority support and assistance with Pritunl deployment and management. Support provided using email and live chat on Slack.

$500/month

$3000/year

Subscribe

Amazon AWS Automated Install

The initial setup for the AWS automated install will upgrade the system and Pritunl. The Pritunl server will not be accessible until the upgrade process completes.

Pritunl with MongoDB

Pritunl without MongoDB

#!/bin/bash echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse" > /etc/apt/sources.list.d/mongodb-org-3.0.list echo "deb http://repo.pritunl.com/stable/apt trusty main" > /etc/apt/sources.list.d/pritunl.list apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 7F0CEB10 apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A apt-get --assume-yes update apt-get --assume-yes upgrade apt-get --assume-yes install pritunl mongodb-org service pritunl start

Install

Select a Linux distribution below and run the commands to install Pritunl. After installing no setup is necessary simply open the web interface at https://SERVER_IP/ in your web browser and login with the default username and password which is "pritunl".

Arch Linux

$ nano /etc/pacman.conf [pritunl] Server = http://repo.pritunl.com/stable/pacman $ pacman-key --keyserver hkp://keyserver.ubuntu.com -r CF8E292A $ pacman-key --lsign-key CF8E292A $ pacman -Sy $ pacman -S pritunl mongodb $ systemctl start mongodb pritunl $ systemctl enable mongodb pritunl

Ubuntu Precise

$ nano /etc/apt/sources.list.d/mongodb-org-3.0.list deb http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.0 multiverse $ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt precise main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 7F0CEB10 $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl mongodb-org $ service pritunl start

Ubuntu Trusty

$ nano /etc/apt/sources.list.d/mongodb-org-3.0.list deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse $ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt trusty main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 7F0CEB10 $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl mongodb-org $ service pritunl start

Ubuntu Wily

$ nano /etc/apt/sources.list.d/mongodb-org-3.0.list deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse $ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt wily main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 7F0CEB10 $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl mongodb-org $ service pritunl start

Ubuntu Xenial

$ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt xenial main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl mongodb-server $ service pritunl start

Debian Wheezy

$ nano /etc/apt/sources.list.d/mongodb-org-3.0.list deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main $ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt wheezy main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 7F0CEB10 $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl mongodb-org $ service pritunl start

Debian Jessie

$ nano /etc/apt/sources.list.d/mongodb-org-3.0.list deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main $ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt jessie main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 7F0CEB10 $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl mongodb-org $ systemctl start mongod pritunl $ systemctl enable mongod pritunl

CentOS 7

$ wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm $ rpm -i epel-release-latest-7.noarch.rpm $ nano /etc/yum.repos.d/pritunl.repo [pritunl] name=Pritunl Repository baseurl=http://repo.pritunl.com/stable/yum/centos/7/ gpgcheck=1 enabled=1 $ gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys CF8E292A $ gpg --armor --export CF8E292A > key.tmp; rpm --import key.tmp; rm -f key.tmp $ yum install pritunl mongodb-server $ systemctl start mongod pritunl $ systemctl enable mongod pritunl

Fedora 22

$ nano /etc/yum.repos.d/pritunl.repo [pritunl] name=Pritunl Repository baseurl=http://repo.pritunl.com/stable/yum/fedora/22/ gpgcheck=1 enabled=1 $ gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys CF8E292A $ gpg --armor --export CF8E292A > key.tmp; rpm --import key.tmp; rm -f key.tmp $ yum install pritunl mongodb-server $ systemctl start mongod pritunl $ systemctl enable mongod pritunl

Amazon Linux

$ sudo nano /etc/yum.repos.d/mongodb-org-3.0.repo [mongodb-org-3.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/3.0/x86_64/ gpgcheck=0 enabled=1 $ sudo nano /etc/yum.repos.d/pritunl.repo [pritunl] name=Pritunl Repository baseurl=http://repo.pritunl.com/stable/yum/centos/7/ gpgcheck=1 enabled=1 $ gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys CF8E292A $ gpg --armor --export CF8E292A > key.tmp; sudo rpm --import key.tmp; rm -f key.tmp $ sudo yum install pritunl mongodb-org $ sudo service mongod start $ sudo start pritunl

Open Source OpenVPN Client

Free and open source cross platform OpenVPN client. Connect to any OpenVPN server with a secure open source client. Additonal integration available when connecting to a Pritunl server. Free and open source alternative to Viscosity.

Linux

Arch Linux

$ nano /etc/pacman.conf [pritunl] Server = http://repo.pritunl.com/stable/pacman $ pacman-key --keyserver hkp://keyserver.ubuntu.com -r CF8E292A $ pacman-key --lsign-key CF8E292A $ pacman -Sy $ pacman -S pritunl-client-gtk

Arch Linux Server

$ nano /etc/pacman.conf [pritunl] Server = http://repo.pritunl.com/stable/pacman $ pacman-key --keyserver hkp://keyserver.ubuntu.com -r CF8E292A $ pacman-key --lsign-key CF8E292A $ pacman -Sy $ pacman -S pritunl-client

Ubuntu

$ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt precise main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl-client-gtk

Ubuntu Server

$ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt precise main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl-client

Ubuntu

$ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt trusty main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl-client-gtk

Ubuntu Server

$ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt trusty main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl-client

Ubuntu

$ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt wily main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl-client-gtk

Ubuntu Server

$ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt wily main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl-client

Ubuntu

$ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt xenial main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl-client-gtk

Ubuntu Server

$ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt xenial main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl-client

Debian

$ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt wheezy main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl-client-gtk

Debian Server

$ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt wheezy main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl-client

Debian

$ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt jessie main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl-client-gtk

Debian Server

$ nano /etc/apt/sources.list.d/pritunl.list deb http://repo.pritunl.com/stable/apt jessie main $ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv CF8E292A $ apt-get update $ apt-get install pritunl-client

CentOS 7

$ nano /etc/yum.repos.d/pritunl.repo [pritunl] name=Pritunl Stable Repository baseurl=http://repo.pritunl.com/stable/yum/centos/7/ gpgcheck=1 enabled=1 $ gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys CF8E292A $ gpg --armor --export CF8E292A > key.tmp; rpm --import key.tmp; rm -f key.tmp $ yum install pritunl-client

Amazon Linux

$ nano /etc/yum.repos.d/pritunl.repo [pritunl] name=Pritunl Stable Repository baseurl=http://repo.pritunl.com/stable/yum/centos/7/ gpgcheck=1 enabled=1 $ gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys CF8E292A $ gpg --armor --export CF8E292A > key.tmp; rpm --import key.tmp; rm -f key.tmp $ yum install pritunl-client