Home
Softono
AWS-VPN-Server-Setup

AWS-VPN-Server-Setup

Open source
764
Stars
162
Forks
20
Issues
45
Watchers
4 years
Last Commit

About AWS-VPN-Server-Setup

AWS-VPN-Server-Setup is an open source CloudFormation-based solution that lets users deploy their own private VPN server on the Amazon AWS cloud in roughly 10 minutes. A unified CloudFormation template handles the heavy lifting, provisioning an EC2 instance configured with PPTP and L2TP/IPsec based on user-supplied parameters such as VPN username, password, and pre-shared key. Users can launch the VPN in any supported AWS region, which include Tokyo, Singapore, Sydney, Frankfurt, Ireland, Sao Paulo, Northern Virginia, Northern California, Oregon, Mumbai, London, Canada Central, Bahrain, Stockholm, Seoul, Paris, Ohio, and Hong Kong. Optional templates allow integration with an Amazon key pair for SSH access. The project is aimed at individuals and small teams who want a quick, low-cost, self-managed VPN for private browsing, securing traffic on public networks, or accessing region-restricted resources. By default it uses t3 instances to ensure compatibility with newer AWS regions. A companion blog post and vid

Platforms

Web Self-hosted Cloud

Links

Rolling out your own private VPN server on AWS cloud in 10 minutes

Please refer to the blog article with all details on setting up your VPN server on the AWS cloud using cloudformation templates. You can launch a VPN on any of AWS regions which include Tokyo, Singapore, Sydney, Frankfurt, Ireland, Sao Paulo, N. Virginia, N. California, Oregon, Mumbai, London, Canada central, Bahrain, Stockholm and Seoul.

Video walkthrough on setting up the server

YouTubeVideo

Contributing to this open source project

Overview and how the files are setup

  • At the heart of this setup is the cloudformation template which does all the heavy lifting of setting up the AWS server based on parameters (VPN username, password, passphrase) entered by the user.
  • Please update the Unified-Cloud-Formation.yaml and Unified-Cloud-Formation-Key-Name.yaml (for use with Amazon Key pair to ssh to your instance)

Further support & updates

  • We look forward to your feedback on how we can improve this system.
  • Vast majority of the support requests can be resolved if users wait 5 - 10 minutes after the VPN is created. This is because the IP address output shows before installation of supporting libraries are complete.
  • If you want a static IP then see this ticket
  • We currently setup VPN with PPTP and L2TP-IPSEC. This can be extended to include openvpn support and enhancements.
  • Your commits and code updates are welcome. Changes are only required to src/templates in most cases. Looking forward to all the pull requests :)

Updates

  • 26 Nov 2019, Added support for HongKong and changed VPN method. Also, please note t3 instances are used by default as many new regions do not support t2. This could affect free usage in certain regions.
  • 29 Aug 2019 , Added support for Bahrain and Stockholm.
  • 19 Feb 2018, Added Paris (EU-WEST-3) region support.
  • 2 June 2017, we had comments from a few users that some new AWS accounts take a few hours before the account can be activated to use this service.
  • 4 Feb 2017, Added Ohio (US-EAST-2) region support.
  • 3 January 2017, Added London region support.
  • 11 November 2016, (Mac users) PPTP is not supported on the latest macOS Sierra so please use the IPSEC over L2TP. Please see screenshots and details on setting up L2TP over IPSEC in the blog.
  • 12 September 2016, (Advanced users) See output/Unified-Cloud-Formation-Key-Name.json if you like to have a KEY NAME specified to SSH to the instance. Thanks to @tedi for the pull request.

License

Licensed under the MIT license. Maintained by Webdigi, a Web Development agency in London, UK