【问题标题】:Import a P12 certificate into a NSS database (with an alias)将 P12 证书导入 NSS 数据库(使用别名)
【发布时间】:2015-11-15 17:56:26
【问题描述】:

我有一个由证书颁发机构生成的个人 P12 证书。

我想将它与 CURL 一起使用来访问受保护的 URL。如果 CENTOS 上的 CURL 是使用 openssl 编译的,我应该只将其转换为 PEM 格式并将该文件提供给 CURL(在 UBUNTU 上测试并正常工作)。

问题是我的 curl 是用 NSS 编译的。所以,谷歌搜索了一段时间后,我发现我需要生成一个 NSS 数据库并将证书导入到这个数据库中。之后,我应该能够调用 curl 并将别名传递给它,并访问我的 URL。

(此处解释为:curl command - Unable to load client cert -8018

但我找不到为我的密钥提供别名的方法。所以 curl 找不到我导入的密钥。

调用 curl 给我:

 * Initializing NSS with certpath: sql:/var/nss
 * warning: ignoring value of ssl.verifyhost
 * skipping SSL peer certificate verification
 * NSS: client certificate not found (nickname not specified)
 * SSL connection using TLS_RSA_WITH_RC4_128_MD5
 * Server certificate:

经过一番研究,我最终有 2 个选项: - 尝试使用昵称导入(或重新生成)这个数据库(或 p12)(找不到如何做) - 或尝试替换我的 curl 和 php_curl (稍后我将需要它)使用 openssl 编译的一个(无法找到包含两个包的合适存储库)

有什么想法吗??

【问题讨论】:

    标签: ssl curl ssl-certificate nss


    【解决方案1】:

    使用 pk12util 命令将现有 p12 证书添加到 NSS DB。将 MYCERT.12 替换为您的证书名称并设置密码。系统将提示您输入昵称/别名

    [root@localhost/]# pk12util -d /app/nssdb/ -i MYCERT.p12 -W PASSWORD
    Enter Password or Pin for "NSS FIPS 140-2 Certificate DB':
    pk12util: no nickname for cert in PKS12 file
    pk12util: using nickname: MYCERT
    pk12util: PKCS12 IMPORT Successful
    

    【讨论】:

    • 有人能指出我正确的方向吗?如何在 api 调用期间使用别名?
    猜你喜欢
    • 1970-01-01
    • 2013-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-13
    • 1970-01-01
    • 1970-01-01
    • 2015-04-17
    相关资源
    最近更新 更多