Skip to content

WireGuard VPN implemented on Amazon Linux 2 with Load Balancing

License

Notifications You must be signed in to change notification settings

rupertbg/aws-wireguard-linux

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Example: WireGuard deployed on AWS with Load Balancing

This is an example repo to demonstrate WireGuard VPN deployed on Amazon EC2 with Network Load Balancer, a Route53 Domain and Amazon Linux 2. Keys are handled via AWS Parameter Store, encrypted with AWS KMS to prevent the need for reconfiguration when instances are scaled, updated or terminated.

Disclaimer: provided as an example and some assumptions have been made for network layout.

Reach out on Reddit with any queries or tips!

Setup

  1. Generate keys for your server and peer with wg genkey | tee privatekey | wg pubkey > publickey then save them in encrypted SSM Parameters called /wireguard/private and /wireguard/peerpublic
  2. Set Cloudformation parameters in config/wireguard-${your region}.json to suit
  3. Deploy pipeline.yml via Cloudformation
  4. Configure and connect your peer

Architecture

WireGuard on AWS Architecture

About

WireGuard VPN implemented on Amazon Linux 2 with Load Balancing

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published