Java 爪哇8元';下载jar时不要使用新的Sectigo交叉签名证书

Java 爪哇8元';下载jar时不要使用新的Sectigo交叉签名证书,java,ssl,ssl-certificate,Java,Ssl,Ssl Certificate,我们有几个网站托管在AWS上,它们都使用Sectigo签名的SSL证书进行签名。其中一个网站拥有一个Javaapplet/webstart应用程序,该应用程序在2020年5月31日之前运行良好,当时 因为在任何浏览器中访问该网站都表明该网站是安全的,但是当尝试下载jar文件时,Java8U252抱怨该网站不可信。尽管Sectigo知识库页面上说Java8u51或更高版本应该可以正常工作,但仍然存在这种情况。它适用于从Java应用程序建立的连接,但不适用于通过WebStart或作为小程序加载应用程

我们有几个网站托管在AWS上,它们都使用Sectigo签名的SSL证书进行签名。其中一个网站拥有一个Javaapplet/webstart应用程序,该应用程序在2020年5月31日之前运行良好,当时

因为在任何浏览器中访问该网站都表明该网站是安全的,但是当尝试下载jar文件时,Java8U252抱怨该网站不可信。尽管Sectigo知识库页面上说Java8u51或更高版本应该可以正常工作,但仍然存在这种情况。它适用于从Java应用程序建立的连接,但不适用于通过WebStart或作为小程序加载应用程序本身

我们的证书由COMODO RSA认证机构颁发

根据对交叉签名证书的描述,我的理解是,COMODO RSA证书颁发机构可以是(刚刚过期),(由)或。所有这些证书都安装在cacerts Java文件和Windows证书管理器中,但出于某种原因,Java总是希望使用过期的证书

我甚至不确定Java是从哪里获得证书的。我已经从cacerts中删除了过期的证书,甚至删除了cacerts文件,Java仍然使用过期的证书

知道Java为什么使用旧的过期证书吗?知道如何让它使用有效的证书吗

>keytool -list -storepass changeit -keystore cacerts | find "AF:E5:D2:44:A8:D1:19:42:30:FF:47:9F:E2:F8:97:BB:CD:7A:8C:B4"
Certificate fingerprint (SHA1): AF:E5:D2:44:A8:D1:19:42:30:FF:47:9F:E2:F8:97:BB:CD:7A:8C:B4
>keytool -list -storepass changeit -keystore cacerts | find "D1:EB:23:A4:6D:17:D6:8F:D9:25:64:C2:F1:F1:60:17:64:D8:E3:49"
Certificate fingerprint (SHA1): D1:EB:23:A4:6D:17:D6:8F:D9:25:64:C2:F1:F1:60:17:64:D8:E3:49

如上所述,这是由于AddTrust\u外部\u根证书过期所致

如果您在基于linux的服务器上,以下是一种快速详细的修复方法:

  • 从系统中删除AddTrust\u External\u Root.crt(通常在
    /etc/ssl/certs
    中找到)
  • /etc/ca certificates.conf
  • 运行
    sudo update ca certificates
    更新openssl使用的证书

  • 我希望它能有所帮助:)

    我们注意到有人在AWS的证书中包含了整个证书链。我们目前的理论是,Java将显式地使用这个链,而忽略了存在可以使用的有效链这一事实。浏览器似乎没有这个问题。

    这不是linux服务器,而是AWS负载平衡器。
    ***
    adding as trusted cert:
      Subject: CN=COMODO RSA Certification Authority, O=COMODO CA Limited, L=Salford, ST=Greater Manchester, C=GB
      Issuer:  CN=AddTrust External CA Root, OU=AddTrust External TTP Network, O=AddTrust AB, C=SE
      Algorithm: RSA; Serial number: 0x2766ee56eb49f38eabd770a2fc84de22
      Valid from Tue May 30 06:48:38 EDT 2000 until Sat May 30 06:48:38 EDT 2020
    
    Found trusted certificate:
    [
    [
      Version: V3
      Subject: CN=COMODO RSA Certification Authority, O=COMODO CA Limited, L=Salford, ST=Greater Manchester, C=GB
      Signature Algorithm: SHA384withRSA, OID = 1.2.840.113549.1.1.12
    
      Key:  Sun RSA public key, 4096 bits
      params: null
      modulus: 595250832037245141724642107398533641144111340640849154810839512193646804439589382557795096048235159392412856809181253983148280442751106836828767077478502910675291715965426418324395462826337195608826159904332409833532414343087397304684051488024083060971973988667565926401713702437407307790551210783180012029671811979458976709742365579736599681150756374332129237698142054260771585540729412505699671993111094681722253786369180597052805125225748672266569013967025850135765598233721214965171040686884703517711864518647963618102322884373894861238464186441528415873877499307554355231373646804211013770034465627350166153734933786011622475019872581027516832913754790596939102532587063612068091625752995700206528059096165261547017202283116886060219954285939324476288744352486373249118864714420341870384243932900936553074796547571643358129426474424573956572670213304441994994142333208766235762328926816055054634905252931414737971249889745696283503174642385591131856834241724878687870772321902051261453524679758731747154638983677185705464969589189761598154153383380395065347776922242683529305823609958629983678843126221186204478003285765580771286537570893899006127941280337699169761047271395591258462580922460487748761665926731923248227868312659
      public exponent: 65537
      Validity: [From: Tue May 30 06:48:38 EDT 2000,
                   To: Sat May 30 06:48:38 EDT 2020]
      Issuer: CN=AddTrust External CA Root, OU=AddTrust External TTP Network, O=AddTrust AB, C=SE
      SerialNumber: [    2766ee56 eb49f38e abd770a2 fc84de22]