{"id":27171050,"url":"https://github.com/burghardt/tf-gcp-easy-wg-quick","last_synced_at":"2025-04-09T08:22:38.688Z","repository":{"id":74824793,"uuid":"537241443","full_name":"burghardt/tf-gcp-easy-wg-quick","owner":"burghardt","description":"Terraform configuration for deploying easy-wg-quick in Google Cloud Platform","archived":false,"fork":false,"pushed_at":"2025-01-03T23:01:27.000Z","size":94,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-04T00:17:34.280Z","etag":null,"topics":["gcp","security","terraform","vpn","vpn-server","wg-quick","wireguard"],"latest_commit_sha":null,"homepage":"","language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/burghardt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-09-15T23:44:41.000Z","updated_at":"2025-01-03T23:01:30.000Z","dependencies_parsed_at":"2024-05-01T03:28:53.987Z","dependency_job_id":"7855443d-d28a-4217-9541-0eb801b41b68","html_url":"https://github.com/burghardt/tf-gcp-easy-wg-quick","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/burghardt%2Ftf-gcp-easy-wg-quick","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/burghardt%2Ftf-gcp-easy-wg-quick/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/burghardt%2Ftf-gcp-easy-wg-quick/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/burghardt%2Ftf-gcp-easy-wg-quick/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/burghardt","download_url":"https://codeload.github.com/burghardt/tf-gcp-easy-wg-quick/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248000425,"owners_count":21031192,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gcp","security","terraform","vpn","vpn-server","wg-quick","wireguard"],"created_at":"2025-04-09T08:22:37.930Z","updated_at":"2025-04-09T08:22:38.638Z","avatar_url":"https://github.com/burghardt.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tf-gcp-easy-wg-quick\nTerraform configuration for deploying [easy-wg-quick] in Google Cloud Platform\n\n## Getting Started\n\nThese instructions will get you a copy of the project up and running on your\nGoogle Cloud Platform account.\n\n### Prerequisites\n\nInstalled and configured [gcloud] and [terraform] tools are required to deploy\nthis project in your infrastructure.\n\n### Installing\n\nClone repository.\n\n    git clone https://github.com/burghardt/tf-gcp-easy-wg-quick.git\n\n## Usage\n\nLogin to your GCP account, when [running Terraform on your workstation] use\ncommand below.\n\n    gcloud auth application-default login\n\nSet JSON credentials file name and GCP project name in the `terraform.tfvars`\nfile.\n\n    project          = \"gcp-project-name\"\n    credentials_file = \"~/.config/gcloud/application_default_credentials.json\"\n\nThen follow the typical Terraform command sequence to deploy `easy-wg-quick`\nto the cloud.\n\n    terraform init\n    terraform validate\n    terraform plan\n    terraform apply\n\nWhen the deployment is ready `local-exec` of `gcloud` will dump the QR code\nto the console. Scan it with the mobile Wireguard application. Outputs also\ncontain examples of `gcloud` commands to access the wghub instance.\n\n## Fine tuning\n\n### Region, zone, boot image\n\nThe region, zone, and boot image are customizable with variables. Keep in mind\nthat [instance-startup.bash] script assumes recent releases of Debian/Ubuntu\nwith Wireguard available for APT. If switching to another distribution,\nadjust this script accordingly.\n\n### Adding more clients\n\nTo add more clients or configure `easy-wg-quick` parameters modify [instance-startup.bash] script. Refer to [easy-wg-quick] documentation for details.\n\n### SSH access to wghub instance\n\nDirect access to port 22 from the Internet is disabled by design. So instead,\nuse [IAP] tunneling to access wghub securely.\n\n    gcloud compute ssh --tunnel-through-iap ...\n\n### Accessing easy-wg-quick data\n\nScript data is available on wghub instance in the `/root/easy-wg-quick`\ndirectory.\n\n## License\n\nThis project is licensed under the MPL-2.0 License - see the [LICENSE] file\nfor details.\n\n[easy-wg-quick]: https://github.com/burghardt/easy-wg-quick\n[gcloud]: https://cloud.google.com/sdk/docs/install\n[running Terraform on your workstation]: https://registry.terraform.io/providers/hashicorp/google/latest/docs/guides/provider_reference#running-terraform-on-your-workstation\n[terraform]: https://learn.hashicorp.com/tutorials/terraform/install-cli\n[instance-startup.bash]: instance-startup.bash\n[IAP]: https://cloud.google.com/iap/\n[LICENSE]: LICENSE\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fburghardt%2Ftf-gcp-easy-wg-quick","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fburghardt%2Ftf-gcp-easy-wg-quick","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fburghardt%2Ftf-gcp-easy-wg-quick/lists"}