client verification
You can link to file ca <file path>
in configuration or you can have the cert embedded in <ca></ca>
tag directly in the configuration file. In both option there can be more than just one cert (including CA cert).
Normally you have this structure:
-----BEGIN CERTIFICATE-----
... base64 encoded CA cert ...
-----END CERTIFICATE-----
You can easily have two CA certs where one will directly follow the other one:
-----BEGIN CERTIFICATE-----
... base64 encoded CA cert ...
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
... base64 encoded CA cert ...
-----END CERTIFICATE-----
Both will be accepted for the client verification.
server verification
In case you are changing the CA for clients the question would be what about server cert.
- server cert is signed by "third" CA
There is no impact on the server cert so no issue is expected.
- server is signed by the same CA like clients' cert
This may be a little bit tricky as there can be just one certificate for the server. Once you switch to new CA the "old" clients will not see it as trusted. In case you have own CA you can do cross sign (at least temporarily) and "share" this CA cert with the clients using cert
option (additional cert like in "client verification" part) so they will see it as trusted cert.
In case you can't do the cross sign or you just simply don't want to do it the "old" clients can still use the own key/cert to authenticate but they have to switch CA cert (cert used to prove the trust of remote side). As the cert can be publicly shared (key have to be kept secure) you can publish the new cert and client can download it even "insecure" way / without VPN connection.