我正在尝试使用 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
文件,并且启用了此文件的读取权限。
任何帮助将不胜感激。谢谢!
答案 0 :(得分:6)
您似乎以root用户身份运行,请检查您是否已经意外地按照ubuntu.com OpenSSL文章中的说明进行操作,并将/root/myCA/caconfig.cnf中的dir param设置为/ home /根/ myCA。
这是因为root home目录与所有其他主目录不同,它位于顶层文件夹中。因此,如果您将其设置为/ home / root / myCA,这是无效的,您必须将其更改为/ root / myCA。
编辑(因为这是问题):
使用"〜"在配置中可能无法正常工作,因为openssl可能无法正确扩展它。如果是,请尝试使用绝对路径。