So, I tried Stacked Certificates and thought it was working as one of my OpenVPN servers went down and it continued to connect to the other one. However, today they are both back up, but it is only connecting to the second server even if I only use the first server in a single 'remote' assignment.
Here is the structure of my client.conf file:
client
remote Server1 Port
remote Server2 Port
verb 1
nobind
mute 20
dev tun
comp-lzo
proto tcp
persist-tun
persist-key
key-direction 1
cipher AES-128-CBC
ns-cert-type server
mute-replay-warnings
resolv-retry infinite
<ca>
-----BEGIN CERTIFICATE-----
###Server1 CA###
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
###Server2 CA###
-----END CERTIFICATE-----
</ca>
<cert>
-----BEGIN CERTIFICATE-----
###Server1 Certificate###
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
###Server2 Certificate###
-----END CERTIFICATE-----
</cert>
<key>
-----BEGIN PRIVATE KEY-----
###Server1 Private Key###
-----END PRIVATE KEY-----
-----BEGIN PRIVATE KEY-----
###Server2 Private Key###
-----END PRIVATE KEY-----
</key>
<tls-auth>
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
###Server1 Static Key###
-----END OpenVPN Static key V1-----
-----BEGIN OpenVPN Static key V1-----
###Server2 Static Key###
-----END OpenVPN Static key V1-----
</tls-auth>
All the private parts have been removed to protect the innocent...
So maybe you can only stack certificates and not keys?
Or I don't understand how to properly stack these things?
Thanks!
P.S. I tried to use the [ oconf ] tag for the client.conf example, but it stripped out all the BEGIN/END and dummy values within the CA, CERT And KEY structures so you couldn't see how it was stacked.