来自SSL_CTX_load_verify_locations的openvpn 2.2.1错误


1

我试图在Linux(Ubuntu 12.04)上使用OpenVPN 2.2.1连接到由同事维护的VPN服务器。他成功使用了TunnelBlick(在Mac上)。我试图逐字地使用他的客户端配置,唯一的变化是本地对等的不同文件。但我得到一个无用的错误消息(编辑私人位):

$ 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

问题(mycorp-ca.crt)中的文件位于当前目录中; 如果我重命名它,我得到一个预期的错误消息(…:fopen:No such file or directory:…)。它可由当前用户读取,并且是ASCII文件:

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

有问题代码在 OpenSSL中调用库函数,但失败了。该库函数的文档只是说,有益,从提到的功能的返回值为0表示:

操作失败,因为CAfile和CApath为NULL或指定位置之一的处理失败。检查错误堆栈以找出原因。

运行openvpnstrace,确认mycorp-ca.crt被读取。那有什么不对?

Answers:


0

显然-文件开头有一个丢失的连字符()。当我添加它时,OpenVPN启动。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.