在Ubuntu上打开CA私钥时出错

时间:2015-01-11 19:31:24

标签: ubuntu openssl self-signed

我正在尝试使用 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文件,并且启用了此文件的读取权限。

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

1 个答案:

答案 0 :(得分:6)

您似乎以root用户身份运行,请检查您是否已经意外地按照ubuntu.com OpenSSL文章中的说明进行操作,并将/root/myCA/caconfig.cnf中的dir param设置为/ home /根/ myCA。

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

编辑(因为这是问题):

使用"〜"在配置中可能无法正常工作,因为openssl可能无法正确扩展它。如果是,请尝试使用绝对路径。