So I have this setup and running now.
Couple of things to bare in mind.
1. I didn't setup a dummy interface, instead I added the following to /etc/network/interfaces:
#For OpenVPN
auto vmbr20
iface vmbr20 inet static
address 10.100.0.1
netmask 255.255.255.0
network 10.100.0.0
broadcast 10.100.0.255
bridge_ports none
bridge_stp off
bridge_fd 0
post-up route add -net 224.0.0.0 netmask 240.0.0.0 dev vmbr20
2. I didn't use his up.sh and down.sh (and removed them from the OpenVPN server.conf) because I was getting errors with tap0. Instead I did the following:
ip tuntap add name tap0 mode tap
Not sure if the above is a good way to do it but it works (happy to accept suggestions based on the original guide using up/down scripts)
3. He uses ufw in the guide - I just added equivalent rules to iptables to open up 1194 for OpenVPN.
4. Debian 8 (due to systemd) seems to have some issues when running OpenVPN as a service. If you start OpenVPN:
service openvpn start
It doesn't work - it starts but it does so without any configuration file. So you need to use:
systemctl start openvpn@<conf file>.service
Where <conf file> is the name of your server configuration file in /etc/openvpn (usually this is just called server.conf if you followed the guide) eg:
You can then tell systemd to start the vpn on boot with:
NOTE:
You can do the same on your client machines just put your client.conf in /etc/openvpn/ (along with keys/certs) and start the client with:
And if you want it to start at boot do:
I haven't setup the cluster yet so currently I am managing all the servers from their own pveproxy interface but I have moved them all off their public IP Addresses and onto the private vpn and can currently connect to them via my desktop browser (connected to the same VPN) on their relevant
https://10.*.*.*:8006 URL).
I will update further once I setup the cluster & enable multicast.
Other than the changes above I pretty much followed the original guide completely, so I hope this makes things a little easier for others.
(Thanks to gardar in ##proxmox on freenode for helping me troubleshoot the systemd issues and pointing me to the original guide).