2.5. 使用私有 CA 使用 OpenSSL 为 CSR 发布证书


要让系统建立一条 TLS 加密的通信频道,证书颁发机构(CA)必须为它们提供有效的证书。如果您有私有 CA,您可以通过从系统签署证书签名请求(CSR)来创建请求的证书。

前提条件

流程

  1. 可选:使用您选择的文本编辑器,来准备一个 OpenSSL 配置文件,以便向证书添加扩展,例如:

    $ vim <openssl.cnf>
    [server-cert]
    extendedKeyUsage = serverAuth
    
    [client-cert]
    extendedKeyUsage = clientAuth
    Copy to Clipboard Toggle word wrap

    请注意,上例仅演示了原则,且 openssl 不会将所有扩展自动添加到证书中。您必须将所需的扩展添加到 CNF 文件中,或者将它们附加到 openssl 命令的参数中。

  2. 使用 x509 工具创建基于 CSR 的证书,例如:

    $ openssl x509 -req -in <server_cert.csr> -CA <ca.crt> -CAkey <ca.key> -days 365 -extfile <openssl.cnf> -extensions <server_cert> -out <server_cert.crt>
    Signature ok
    subject=C = US, O = Example Organization, CN = server.example.com
    Getting CA Private Key
    Copy to Clipboard Toggle word wrap

    要提高安全性,请在从 CSR 创建另一个证书前删除序列号文件。这样,您确保序列号始终是随机的。如果您省略了指定自定义文件名的 CAserial 选项,则序列号文件名与证书的文件名相同,但其扩展名被 .srl 扩展名替换(上例中的server-cert.srl )。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat