Ubuntu 默认SSL证书目录
我已经按照文档中的示例添加了对使用asio加载HTTPS站点的支持,这意味着我调用Ubuntu 默认SSL证书目录,ubuntu,ssl,asio,Ubuntu,Ssl,Asio,我已经按照文档中的示例添加了对使用asio加载HTTPS站点的支持,这意味着我调用ctx.set_default_verify_path()使用系统默认路径查找证书 然而,我得到了:无法获得本地颁发者证书,我注意到它正试图在我的Ubuntu系统上使用/usr/local/ssl/certs 但我甚至没有那个目录,相反,证书似乎在/etc/ssl/certs中,所以如果我将环境变量ssl\u CERT\u DIR指向那里,它就可以工作了 我的问题是如何获取默认值以及如何更改默认值,我不知道我的系统
ctx.set_default_verify_path()
使用系统默认路径查找证书
然而,我得到了:无法获得本地颁发者证书
,我注意到它正试图在我的Ubuntu系统上使用/usr/local/ssl/certs
但我甚至没有那个目录,相反,证书似乎在/etc/ssl/certs
中,所以如果我将环境变量ssl\u CERT\u DIR指向那里,它就可以工作了
我的问题是如何获取默认值以及如何更改默认值,我不知道我的系统是否错误,或者是否由于其他原因从asio/ssl中获取了错误的目录。我发现,在使用
--prefix
或--openssldir
构建OpenSSL时,路径可能是正确的
但为了避免重新编译OpenSSL,可以添加另一个搜索路径,如下所示:
ctx.add_verify_path("/etc/ssl/certs");