在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加载配置信息


当前回答

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

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

其他回答

你应该指定配置的绝对路径,就像这样:

openssl req -x509 -config "C:\OpenSSL-Win64\bin\openssl.cnf" ...

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

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

在我的例子中,我需要使用config选项在命令上手动设置openssl.cnf文件的路径。所以这个命令

openssl req -x509 -config "C:\Users\sk\Downloads\openssl-0.9.8k_X64\openssl.cnf" -newkey rsa:4096 -keyout key.pem -out cert.pem -nodes -days 900

在安装OpenSSL之后,我需要创建一个新的环境变量:

名称:OPENSSL_CONF 取值范围:C:\Program Files\OpenSSL\ openssl.cnf

powershell:

$env:OPENSSL_CONF = "${env:ProgramFiles}\OpenSSL\openssl.cnf"

这个值与以前的安装版本不同(如本文前面的编辑所示)。另外,不要忘记将openssl二进制文件夹${env:ProgramFiles}\ openssl添加到您的Path中。

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

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

当然,如果你使用的是GnuWin32