openssl 生成证书时报错Error opening CA private key

参考http://blog.csdn.net/u014721096/article/details/78571287生成证书方法【我是在winxp 32上执行的,特意下的openssl win32版】,在用openssl生成自签CA及证书私钥与证书请求文件后,用自签CA与证书请求文件生成证书,生成证书命令如下:openssl ca -in E:\OpenSSL-Win32\bin\PEM\demoCA\cert.csr -days 1 -out E:\OpenSSL-Win32\bin\PEM\demoCA\certs\cert.crt

执行该命令报错Error opening CA private key,如图1

openssl 生成证书时报错Error opening CA private key_第1张图片

图1

很明显报错是说私钥文件找不到,由于报错中的路径是相对路径,先在本机上搜到demoCA这个文件夹,观察这个文件夹下是否存在cakey.pem文件


图2

若存在,则继续排查openssl配置文件,搜索openssl.cfg文件,查看其配置的路径为./demoCA,意为demoCA与本配置文件同路径。

openssl 生成证书时报错Error opening CA private key_第2张图片

图3

而从图2可以看到demoCA是在E:\OpenSSL-Win32\bin\PEM路径下,配置文件路径在E:\OpenSSL-Win32\bin,显然两者不是同一个路径,是配置文件中的路径配错了。

可以将openssl.cfg的路径修改成demoCA的真实路径,最好直接填写绝对路径E:\OpenSSL-Win32\bin\PEM\demoCA


图4

修改完成后再在cmd中输出证书生成命令,不再出现报错Error opening CA private key

openssl 生成证书时报错Error opening CA private key_第3张图片

图5

控制台回显中有The mandatory stateOrProvinceName field was missing,是因为我在生成CA证书与证书请求文件时,必填项省份名称没填,如图6

openssl 生成证书时报错Error opening CA private key_第4张图片

图6

按照要求(填写省份)重新生成这两个文件后,再执行生成证书命令已经OK,控制台回显如图7

openssl 生成证书时报错Error opening CA private key_第5张图片

 图7


你可能感兴趣的:(openssl 生成证书时报错Error opening CA private key)