![](/img/trans.png)
[英]sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
[英]maven is “unable to find valid certification path to requested target” - letsencrypt ssl certificate
我最近切換到了我的maven repo的letsencrypt證書(Apache代理背后的Artifactory)。 通過瀏覽器進行回訪訪問工作正常,證明證書沒有問題(下面的截圖)。
如果我手動將證書導入java密鑰庫,它也可以工作。
但根據這個問題, Java應該接受以8u101開頭的letsencrypt證書 。
我總是得到這個例外:
sun.security.validator.ValidatorException:
PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target -> [Help 1]
C:\myproject>mvn -version
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T17:41:47+01:00)
Maven home: C:\maven
Java version: 1.8.0_112, vendor: Oracle Corporation
Java home: C:\jdk1.8_win64\jre
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 10", version: "10.0", arch: "amd64", family: "dos"
終於弄明白了,3個月后......
maven artifactory存儲庫前面的apache服務器未配置為在鏈中提供中間證書。
我下載了中間證書 - 讓加密權限X3(IdenTrust交叉簽名) - 並配置了apache來提供服務。
實際上, domain.crt
文件包含域和中間證書,並且對於我的所有測試瀏覽器來說總是足夠好。 但是那台機器上的eclipse / maven設置無法處理它。
在SSL實驗室檢查告訴我證書鏈不完整(即使沒有瀏覽器似乎在乎)之后,我才開始研究apache配置。
之前:
SSLEngine On
SSLCertificateFile "path/to/domain.crt"
SSLCertificateKeyFile "path/to/domain.key"
后:
SSLEngine On
SSLCertificateFile "path/to/domain.crt"
SSLCertificateKeyFile "path/to/domain.key"
SSLCertificateChainFile "path/to/letsencrypt-authority-x3-identrust.pem"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.