在Windows上使用OpenSSL时:

Openssl genrsa out privatekey。Pem 1024—>

成功创建

openssl req -new -x509 -key privatekey.pem -out publickey.cer -days 365 
---->

显示错误消息为

无法从/usr/local/ssl/openssl.cnf加载配置信息


当前回答

对我来说,在调用之前放置变量是可行的:

OPENSSL_CONF=/usr/ssl/openssl.cnf openssl req -new -x509 -key privatekey.pem -out publickey.cer -days 365

其他回答

安装OpenSSL后,需要重新启动计算机,并以管理员身份运行。那么它就起作用了。

使用GnuWin32工具,我在C:\ GnuWin32 \share下找到了openssl.cnf

set OPENSSL_CONF=C:\gnuwin32\share\openssl.cnf

在Windows 10中,不需要重新启动,也不需要以管理员模式运行,而是像这样设置openssl配置:

set OPENSSL_CONF=C:\Program Files (x86)\GnuWin32\share\openssl.cnf

当然,如果你使用的是GnuWin32

在Windows 7中,我不需要重新启动,只需以管理员模式运行命令提示符即可。

我在Windows 7上也遇到了类似的问题:

WARNING: can't open config file: C:\OpenSSL-Win32\bin\openssl.cfg
Unable to load config info from C:\OpenSSL-Win32\bin\openssl.cfg

原因是在没有使用deinstallator的情况下删除了OpenSSL-Win32目录,所以没有正确地从系统中删除所有组件。 我不得不手动删除环境变量OPENSSL_CONF。

一些openssl二进制文件,例如安装在git中,不需要OPENSSL_CONF环境变量,但是如果这个环境变量存在,它必须指向有效的文件。