• 证书链合并


      浏览器报错的证书链的问题,我们一般会有三种证书: RootCA.crt(rCA,被信任的根证书)、IntermediateCA.crt(mCA,某些厂商有多个中间证书)、server.crt(sCA,通过CSR签下来的证书),某些厂商的rCA和mCA是需要用户自己下载的。为了让浏览器能够信任我们的证书,我们需要配置一条完整的证书链,证书链由sCA和mCA构成就好,rCA是浏览器内置,不需要服务器给提供。nginx配置证书链的时候,就是指定一个证书文件,这个文件中含有我们整个证书链的所有证书就好,证书合并的时候,正确的合并方法是把 mCA 合并到 sCA 中。当有多个 mCA 文件时,mCA 从下级到上级(根证书为最上级)依次合并到 sCA 中。在这个过程中,rCA 被视为多余的文件。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    # Combined Certificates
    
    -----BEGIN CERTIFICATE-----
    ...... sCA ......
    ------END CERTIFICATE------
    
    -----BEGIN CERTIFICATE-----
    ...... mCA (lower) ......
    ------END CERTIFICATE------
    
    -----BEGIN CERTIFICATE-----
    ...... mCA (upper) ......
    ------END CERTIFICATE------
    

     

    证书链的问题解决后,基本应该就可以正常工作了。

    .crt服务器证书文件直接通过记事本打开,.cer中级证书也直接通过记事本打开,然后按照如上规则,将两个文件合并(服务器证书内容在最上面,中级证书内容在下面),最后直接使用合并后的文件即可,这样就不会再报中级证书(证书链)的问题了。

    注:实际上.crt跟.cer证书文件内容一样,只是扩展名不同而已。

    注:服务器证书包含.crt和.key文件

  • 相关阅读:
    Linux
    Linux
    Linux
    Linux
    Linux
    Python
    Linux
    Python
    MySQL
    Python
  • 原文地址:https://www.cnblogs.com/dreamer-fish/p/7479294.html
Copyright © 2020-2023  润新知