OpenVPN notes
This might be of interest Remove the password from an OpenVPN key.
Put all user config files in ~/.openvpn. Note that each user will have their own client.key and client.crt files. The client.conf file will need to be slightly updated for each user.
- client.conf
- ca.crt
- client.crt
- client.key
- openvpn-dns-config.sh
client.conf
Note that you will have to edit client.conf to set the full path your the ca.crt, client.crt, and client.key files. Unfortunately OpenVPN does not expand ~ notation for the user home directory. Otherwise all users could have the exact same client.conf file. The only difference would be the client.key and client.crt. This seems like a stupid oversight to me that complicates the config process. Perhaps there is some other idiom to handle this problem. Find the following lines in client.conf and replace USERNAME with the username in question:
ca /home/USERNAME/.openvpn/ca.crt cert /home/USERNAME/.openvpn/client.crt key /home/USERNAME/.openvpn/client.key
VPN startup and shutdown
Add these alias to your .bash_aliases file or wherever you keep them:
alias vpnup='sudo /usr/sbin/openvpn --config ~/.openvpn/client.conf --writepid ~/.openvpn/openvpn.pid --daemon' alias vpndown='sudo kill -INT `cat ~/.openvpn/openvpn.pid`'