AWS EC2 OpenVPN on demand with terraform
Alternatives To Terravpn
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Kubernetes Homelab250
a month ago6bsd-3-clauseShell
Building a multi-master multi-node Kubernetes homelab with kubeadm, Ansible, Helm and Terraform.
Openvpn Terraform Install96
a month ago4mitHCL
A one-stop Terraform module that creates an OpenVPN server in AWS readily provisioned with access by the users defined in the input
Devops Tools Documentation80
3 days ago15SCSS
This Repository contains DevOps Projects and Tools Documentation step by step practice
Terraform Aws Pritunl Vpn Server40
2 years ago5mitHCL
Pritunl VPN Server for your public/private like VPC on AWS
3 years ago5otherHCL
Terraform module which creates OpenVPN on AWS
Deploy Aws Docker Openvpn23
2 months ago2HCL
Deploys OpenVPN in a container to AWS
Terraform Openvpn18
5 years ago2gpl-3.0HCL
You can have your pay as you go personal VPN in minutes! And you can destroy your environment whenever you want!
2 years ago1gpl-3.0HCL
Terraform scripts to create a quick OpenVPN server in the cloud (AWS, Google, Azure, more-to-come!)
Terraform Aws Openvpnserver15
2 years agomitShell
OpenVPN and Access Server with Letsencrypt on EC2
Terraform Module Aws Openvpn15
a year agomitHCL
Terraform Module to create an OpenVPN server on AWS
Alternatives To Terravpn
Select To Compare

Alternative Project Comparisons


This is a Terraform project to build and start an OpenVPN server running within AWS EC2 instance of any region or size. In a single command, start up a new personal OpenVPN server in any region in AWS in less than a minute.

Disclaimer: This is very much a work-in-progress and an experiment.


  1. Setup AWS

    Create/Use an IAM Setting in your AWS configuration that can at a minimum manage EC2 and Security Groups. Set the configuration in your shell.

    export AWS_ACCESS_KEY_ID="<access id>"
    export AWS_SECRET_ACCESS_KEY="<access secret>"
  2. Install Terraform.

  3. Checkout this Repository.

  4. Run terraform init in the projects directory.

  5. Run terraform plan to validate the project on your machine.


To create your own OpenVPN server: run terraform apply in the directory of this project, that's it.

This will do a few things:

  1. Creates a fresh SSH Key pair in the keys directory for this instance only.
  2. Creates a new Security Group and EC2 Instance in AWS.
  3. Installs and configures OpenVPN on new instance.
  4. Creates a client configuration file for your device. You will be presented with a download command on success to run via scp.


To run your new setup in a separate region, pass -var "region=ca-central-1" or equivalent to terraform plan and terraform apply. To use a different instance size, pass -var "instance_size=t2.micro" or equivalent to terraform plan and terraform apply.


To take down your already created VPN: run terraform destroy in the project directory.


Read more about setting up OpenVPN on Ubuntu with Digital Ocean's setup.

Popular Terraform Projects
Popular Openvpn Projects
Popular Configuration Management Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Amazon Web Services
Aws Ec2
Openvpn Server