openvpn 2.2.1 error from SSL_CTX_load_verify_locations

1

1

I am trying to use OpenVPN 2.2.1 on Linux (Ubuntu 12.04) to connect to a VPN server maintained by a colleague. He uses TunnelBlick (on a Mac) successfully. I am trying to use his client configuration verbatim, the only changes being different files for the local peer. But I am getting an unhelpful error message (editing out private bits):

$ openvpn mycorp.conf
… OpenVPN 2.2.1 i686-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] [eurephia] [MH] [PF_INET6] [IPv6 payload 20110424-2 (2.2RC2)] built on Mar 30 2012
… NOTE: the current --script-security setting may allow this configuration to call user-defined scripts
… Cannot load CA certificate file mycorp-ca.crt path (null) (SSL_CTX_load_verify_locations) (OpenSSL)
… Exiting

The file in question (mycorp-ca.crt) is in the current directory; if I rename it, I get an expected error message (…:fopen:No such file or directory:…). It is readable by the current user and is an ASCII file:

----BEGIN CERTIFICATE-----
…18 lines of Base-64…
-----END CERTIFICATE-----

The code in question calls a library function in OpenSSL and it failed. The library function documentation just says, helpfully, that a return value of 0 from the mentioned function means:

The operation failed because CAfile and CApath are NULL or the processing at one of the locations specified failed. Check the error stack to find out the reason.

Running openvpn under strace confirms that mycorp-ca.crt is being read. So what is wrong?

Jesse Glick

Posted 2013-03-25T23:52:19.097

Reputation: 111

Answers

0

Apparently there was a missing hyphen (-) at the beginning of the file. When I add that, OpenVPN starts.

Jesse Glick

Posted 2013-03-25T23:52:19.097

Reputation: 111