gpt4 book ai didi

ssl - 如何从 cert.pem 和 key.pem 获取 .crt 和 .key

转载 作者:行者123 更新时间:2023-12-04 22:35:09 27 4
gpt4 key购买 nike

我知道这是一个与许多其他问题非常相似的问题,但他们都没有给出直接的答案或对我有用的答案......
我从 Let's encrypt 获得了两个文件:

  • 证书.pem
  • key.pem

  • 我需要让他们进入 crtkey在 nginx 服务器上使用的格式。
    我努力了: openssl rsa -outform der -in key.pem -out key.keyopenssl x509 -outform der -in cert.pem -out cert.crt但是在启动nginx时出现以下错误:
    # service nginx restart
    Performing sanity check on nginx configuration:
    nginx: [emerg] cannot load certificate "/etc/ssl/nginx/cert.crt": PEM_read_bio_X509_AUX() failed (SSL: error:0906D06C:PEM routines:PEM_read_bio:no start line:Expecting: TRUSTED CERTIFICATE)
    nginx: configuration file /usr/local/etc/nginx/nginx.conf test failed

    最佳答案

    扩展 .pem表示文件格式为 PEM (隐私增强邮件)。但是,扩展名并没有告诉任何有关文件内容的信息。内容可以是证书、私钥、公钥或其他东西。
    扩展 .crt表示文件内容为证书。但是,扩展名并没有说明文件格式。文件格式可能是 PEM, (可分辨编码规则)或其他东西。如果文件是文本并且包含 -----BEGIN CERTIFICATE----- ,文件格式为PEM。另一方面,如果文件是二进制文件,则文件格式很可能是 DER。
    扩展 .key表示文件的内容是私钥。但是,扩展名并没有说明文件格式。文件格式可能是 PEM、DER 或其他格式。如果文件是文本并且包含 -----BEGIN PRIVATE KEY----- (或类似的东西),文件格式是 PEM。另一方面,如果文件是二进制文件,则文件格式很可能是 DER。
    下面来自“Illustrated X.509 Certificate”的图表说明了之间的关系。 ASN.1 ( X.680 ), ( X.690 ), BASE64 ( RFC 4648 ) 和 PEM (RFC 7468)。
    relationship among ASN.1, DER, BASE64 and PEM
    relationship among ASN.1, DER, BASE64 and PEM (Application to X.509 Certificate
    两个ssl_certificatessl_certificate_keyngx_http_ssl_module期望文件格式为 PEM,如引用文档所述。因此,您不必更改 cert.pem 的文件格式。和 key.pem因为他们的文件扩展名 .pem表示他们的文件格式已经是 PEM。只需在您的 Nginx 配置文件中编写如下所示。

    ssl_certificate     /path/to/cert.pem;
    ssl_certificate_key /path/to/key.pem;
    如果您喜欢 .crt.key扩展名,只需像下面这样重命名它们。
    $ mv cert.pem cert.crt
    $ mv key.pem key.key

    关于ssl - 如何从 cert.pem 和 key.pem 获取 .crt 和 .key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62823792/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com