
🛡️ 🔒 This project's goal is to be simple to create and destroy your own VPN service using WireGuard.
This project's goal is to be simple to create and destroy your own VPN service using WireGuard.
Run with sudo is necessary because we need permission on localhost to install packages, configure a network interface and start a process.
Select your cloud provider AWS, DigitalOcean, GCP and open the directory
You can change the region or key name in the variable.tf
sudo terraform init
sudo terraform plan
sudo terraform apply
sudo terraform plan -var "do_token=value"
sudo terraform apply -var "do_token=value"
sudo terraform plan -var "project_id=value"
sudo terraform apply -var "project_id=value"
You supply the key to Terraform using the environment variable GOOGLE_APPLICATION_CREDENTIALS:
export GOOGLE_APPLICATION_CREDENTIALS=path
sudo aws configure
Or you can use your credentials as environment variable:
export AWS_ACCESS_KEY_ID=
export AWS_SECRET_ACCESS_KEY=
curl ipinfo.io/ip
sudo systemctl start wg-quick@wg0
curl ipinfo.io/ip
If you want a extra client for mobile, you need to change the value of the variable mobile in variable.tf or command line:
sudo terraform plan -var "mobile=true"
sudo terraform apply -var "mobile=true"
If variable enabled it will be installed the package qrencode for generate a QRCODE with the configuration for configure in your mobile device.
After the execution it will be genered a QRCODE in stdout terraform, just scan in your mobile device.
Tested with the Android WireGuard Client
sudo terraform destroy
Contributions, issues and feature requests are welcome!
Feel free to check issues.
👤 João Freire