Use case, say that you have a corporate server that you want team members to access. Maybe it is running a build server (Jenkins) and source control repository (GitLab). Instead of publishing these services on the web we can keep them in a local network and then add access to them via a VPN; Virtual Private Network.
I use DynVPN and netvirt-agent. It was a bit tricky to get it working on Ubuntu linux so I decided to share the config:
sudo apt-get install supervisor
sudo nano /etc/init.d/netvirt-agent
'''
[program:netvirt]
;command=/home/sebnil/start_netvirt.sh
command=netvirt-agent
autostart=true
autorestart=true
user=sebnil
environment=HOME="/home/sebnil",USER=sebnil"
stderr_logfile=/var/log/netvirt/long.err.log
stdout_logfile=/var/log/netvirt/long.out.log
'''
sudo supervisorctl reread
sudo supervisorctl reload
sudo supervisorctl status
Change "sebnil" to your user.
Getting it running on Windows is much easier: