【问题标题】:Self signed SSL certificate for localhost with Apache使用 Apache 的本地主机自签名 SSL 证书
【发布时间】:2018-10-02 19:30:18
【问题描述】:

我使用 Open SSL 创建了一个自签名 SSL 证书,我需要一个 key.pem 和一个 cert.pem 文件...

我的 server.crt = cert.pem (Certificate) , server.csr = csr.pem (Certificate request), server.key = key.pem (RSA) 是真的吗?我可以重命名这些文件还是有办法转换它们?

【问题讨论】:

    标签: apache ssl localhost


    【解决方案1】:

    .PEM = PEM 扩展名用于不同类型的 X.509v3 文件,其中包含前缀为“—- BEGIN ...”行的 ASCII (Base64) 数据。

    .CRT = CRT 扩展名用于证书。证书可以编码为 ASCII PEM。 CER 和 CRT 扩展几乎是同义词。

    CER = .crt 的替代形式(Microsoft 约定)您可以使用 MS 将 .crt 转换为 .cer(.both DER 编码的 .cer,或 base64[PEM] 编码的 .cer)。

    .KEY = KEY 扩展名同时用于公钥和私钥。密钥可以编码为 ASCII PEM。

    只有当编码类型可以相同时,才能安全地互换 CRT 和 CER。 (即 PEM 编码 CRT = PEM 编码 CER)。

    我使用以下命令生成 .pem 文件,

    1)生成 CA

    /usr/bin/openssl req -out ca.pem -new -x509 -days 1025

    此命令生成 CA 文件“ca.pem”和 CA 密钥“privkey.pem”。

    2)生成服务器证书/密钥对

      /usr/bin/openssl genrsa -out server_key.pem 1024
    

    3)生成服务器证书请求

      /usr/bin/openssl req -key server_key.pem -new -out server.req
    

    4)生成生成.srl文件的命令

     openssl x509 -req -in sguild.req -CA CA.pem -CAkey privkey.pem -CAcreateserial -out sguild.pem
    

    5)生成服务器证书.pem的命令

    /usr/bin/openssl x509 -req -in server.req -CA ca.pem -CAkey privkey.pem -CAserial file.srl -out server_cert.pem -days 730
    

    但我需要

    RootCA.pem
    server.crt
    server.key
    

    所以我只是重命名

    ca.pem (generated from above command) to RootCA.pem
    
    server_cert.pem (generated from above command) to server.crt
    
    server_key.pem (generated from above command) to key.pem 
    

    它对我有用!

    【讨论】:

    • 非常感谢!但这意味着我也可以重命名我的文件。
    • 是的,您可以尝试,但使用上述命令生成所有 .pem 文件。
    • 嗨 Abhijeet,我确实像你告诉我的那样,现在它工作了 :) 非常感谢!
    • 欢迎@丹尼尔,如果你满意,请接受我的回答!!提前致谢
    猜你喜欢
    • 1970-01-01
    • 2018-06-23
    • 2021-08-03
    • 2011-11-26
    • 1970-01-01
    • 2016-02-13
    • 2020-10-25
    • 2020-05-17
    相关资源
    最近更新 更多