get-your-vpn-ansible
What is it?
Ansible playbook to install get-your-vpn
on system via ssh.
On target machine will be installed:
- get-your-vpn-config - invite link and vpn provider manager
- outline-ss proxy with management api - shadowsocks proxy provider
- openvpn with management api - openvpn server
- prometheus server - metrics for vpn providers
- openvpn prometheus exporter - expose openvpn metrics
All application are installed using docker and docker-compose.
Preparation
- Install ansible on local machine
- Install ansible dependencies on local machine
ansible-galaxy install -r requirements.yml
- Prepare ansible-inventory, variables and secrets.
cp -r inventory-example inventory
- set host where will be installed
get-your-vpn
toinventory/hosts
file. - edit
inventory/group_vars/all.yml
, change variables (speciallyopenvpn_private_key
)
- Login on target machine (where you will install
get-your-vpn
), install docker, install docker-compose. Or you can install docker & docker-compose via ansibleansible-playbook --private-key=~/.ssh/local-ubuntu-server -i=inventory --user=fuck-rkn --become -K install-docker.yml
Run installation
ansible-playbook --private-key={{ path to ssh key for server }} -i=inventory --user={{ ssh user }} --become -K deploy-application.yml
After installation
- Check docker containers
docker ps -f name=get-your-vpn
. - If openvpn not initialized (first run) follow this manual. Use password for primary key from
openvpn_private_key
config.
What needs to install manually
Install frontend for invite link and vpn provider manager.