FreeIPA外部CA(中间CA)

时间:2014-09-02 00:20:46

标签: openssl ssl-certificate ca

我们正在使用现有的CA进行freeipa安装。在安装期间,会生成CSR并且必须由CA签名才能创建证书。此证书必须

  

X509v3基本约束:                   CA:TRUE

我现在已经研究了大约一个小时,我不知道该怎么做。通常情况下,我会签署CSR这样的

openssl x509 -req -in ipa.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out ipa.pem

这有效,但CA:TRUE不存在。 我试着这样做:

openssl x509 -req -in ipa.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -extensions v3_ca -out ipa.pem

它生成的功能与原始功能相同。

我可以看到生成的密钥从我的openssl.cnf中提取信息,但它忽略了下面的扩展语句。

[ v3_ca ]
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer
basicConstraints = CA:true

有没有人对我需要做什么或者我能提供哪些其他信息有任何想法?谢谢!

旁注:我没有gui或gui工具,这完全来自命令行。 CSR由IPA软件生成,我不是手动创建的。

这是来自IPA的说明:

  

为身份管理生成的CA签名证书   服务器必须是有效的CA证书。这要么是要么   Basic Constraint设置为CA = true或Key Usage Extension为   在签名证书上设置,以允许它签署证书。

2 个答案:

答案 0 :(得分:4)

你可以使用" -extfile"使openssl x509读取特定的配置。命令。

我建议你制作一个新的配置,让我们把它命名为foo.cnf。 里面放了:

subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer:always
basicConstraints = CA:true

现在通过一个小小的改动来运行你的命令:

openssl x509 -req -in ipa.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -extfile foo.cnf -out ipa.pem

您现在应该拥有CA证书:true。

答案 1 :(得分:0)

  1. 你应该先创建配置文件

    tee ca.cnf < [ v3_ca ]
    subjectKeyIdentifier=hash
    authorityKeyIdentifier=keyid:always,issuer:always
    basicConstraints = CA:true
    EOF

  2. 使用选项签名时使用

<块引用>

-extensions v3_ca -extfile ca.cnf

sudo openssl x509 -req -in ipa.csr -CA root.crt -CAkey root.key -CAcreateserial -extensions v3_ca -extfile ca.cnf -out ipa.crt
  1. 检查

    sudo openssl x509 -text -noout -in ipa.crt