{"id":19967567,"url":"https://github.com/rishavnandi/ansible_selfhost_vpn","last_synced_at":"2025-05-04T00:31:51.666Z","repository":{"id":61588695,"uuid":"552865780","full_name":"rishavnandi/ansible_selfhost_vpn","owner":"rishavnandi","description":"Ansible Playbooks To Turn A VPS Into A Wireguard VPN Server","archived":false,"fork":false,"pushed_at":"2022-12-31T15:26:05.000Z","size":17,"stargazers_count":54,"open_issues_count":0,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-07T23:51:09.855Z","etag":null,"topics":["ansible","devops","hacktoberfest","hacktoberfest-accepted","hactoberfest2022","vps","wireguard","wireguard-vpn"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"wtfpl","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rishavnandi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-10-17T10:54:18.000Z","updated_at":"2025-02-10T07:53:03.000Z","dependencies_parsed_at":"2023-01-31T19:30:35.292Z","dependency_job_id":null,"html_url":"https://github.com/rishavnandi/ansible_selfhost_vpn","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/rishavnandi%2Fansible_selfhost_vpn","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rishavnandi%2Fansible_selfhost_vpn/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rishavnandi%2Fansible_selfhost_vpn/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rishavnandi%2Fansible_selfhost_vpn/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rishavnandi","download_url":"https://codeload.github.com/rishavnandi/ansible_selfhost_vpn/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252272945,"owners_count":21721831,"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":["ansible","devops","hacktoberfest","hacktoberfest-accepted","hactoberfest2022","vps","wireguard","wireguard-vpn"],"created_at":"2024-11-13T02:42:39.814Z","updated_at":"2025-05-04T00:31:51.192Z","avatar_url":"https://github.com/rishavnandi.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ansible playbooks to setup a self-hosted WireGuard VPN server\n\n![Screenshot (1)](https://user-images.githubusercontent.com/101431112/209468911-88c70c8d-c686-4dac-b4c7-bc3b1fb67568.png)\n\n## Usage\n\n- Clone the repo \n```bash\ngit clone https://github.com/rishavnandi/ansible_selfhost_vpn\n```\n- Then modify the variables in the group_vars/all/vars.yml based on your needs and add your server's IP and path of the ssh key(if you are using one) in the inventory file \n\n- Then simply run the playbook\n```bash\nansible-playbook run.yml -K\n```\n- Then you can visit the nginx proxy manager at your server's IP and port 81 to configure a domain that points to nginx and WireGuard sites\n\n## References and Info\n\nThis repository contains Ansible playbooks to setup a self-hosted WireGuard VPN server. It is based on [wg-easy](https://github.com/WeeJeWel/wg-easy) which provides a nice web interface to add and remove clients.\n\nIt also sets up nginx proxy manager so you can access your services from the internet using a domain name.\n\nYou can obtain a free domain name from [DuckDNS](https://www.duckdns.org/). You can also use a domain name you already own.\nMake sure the domain name is pointing to your server's public IP address.\n\nThen you can use nginx proxy manager to manage your domains and reverse proxy your services.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frishavnandi%2Fansible_selfhost_vpn","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frishavnandi%2Fansible_selfhost_vpn","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frishavnandi%2Fansible_selfhost_vpn/lists"}