我正在尝试在 Ubuntu 14.04上使用OpenSSL创建自签名证书
输入命令openssl ca -in tempreq.pem -out server_crt.pem时,出现以下错误:

Using configuration from /root/myCA/caconfig.cnf
**Error opening CA private key** ~/myCA/private/cakey.pem
139754719667872:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('~/myCA/private/cakey.pem','r')
139754719667872:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:
unable to load CA private key

我已经验证nano ~/myCA/private/cakey.pem命令会打开cakey.pem文件,并且已启用对此文件的读取权限。

任何帮助将不胜感激。谢谢!

最佳答案

您似乎正在以root用户身份运行,请检查您是否没有意外地照过ubuntu.com OpenSSL文章上的说明,并将/root/myCA/caconfig.cnf中的dir参数设置为/home/root/myCA。

作为根主目录,它与其他所有主目录不同,因为它位于顶部文件夹中。因此,如果将其设置为/home/root/myCA,那是无效的,则必须将其更改为/root/myCA。

编辑(因为这是问题所在):

在配置中使用“〜”可能不起作用,因为openssl可能无法正确展开它。如果是这样,请尝试使用绝对路径。

09-05 01:15