2017-04-22 15 views
5

Niedawno zmieniłem certyfikaty na letsencrypt dla mojego maven repo (Artifactory za proxy Apache). Dostęp do repozytorium za pomocą przeglądarki działa dobrze, nie wykazując żadnych problemów z certyfikatem (zrzut ekranu poniżej).maven "nie może znaleźć prawidłowej ścieżki certyfikacji do żądanego miejsca docelowego" - certyfikat letsencrypt ssl

Działa również, gdy I import the certificate manually into the java keystore.

Ale według tego pytania SO, Java should accept letsencrypt certificates starting with 8u101.

Ja zawsze otrzymuję ten wyjątek:

sun.security.validator.ValidatorException: 
PKIX path building failed: 
sun.security.provider.certpath.SunCertPathBuilderException: 
unable to find valid certification path to requested target -> [Help 1] 

enter image description here

enter image description here

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" 

Odpowiedz

1

końcu zorientowaliśmy się, 3 miesiące później ...

Serwer Apache w front of the arterialnego repozytorium maven y nie został skonfigurowany do dostarczania pośredniego certyfikatu w łańcuchu.

Ściągnąłem certyfikat pośredni - Let’s Encrypt Authority X3 (IdenTrust cross-signed) - i skonfigurowałem apache, aby go również obsługiwał.

W rzeczywistości plik domain.crt zawiera zarówno domenę, jak i certyfikat pośredni, a dla wszystkich moich testowych przeglądarek zawsze był wystarczająco dobry. Ale konfiguracja Eclipse/maven na tej maszynie nie mogła sobie z tym poradzić.

Zacząłem tylko przeglądać konfigurację apache po tym, jak SSL Labs check powiedział mi, że łańcuch certyfikatów był niekompletny (mimo że żadna przeglądarka nie wydawała się tym zainteresowana).

Przed:

SSLEngine On 
    SSLCertificateFile "path/to/domain.crt" 
    SSLCertificateKeyFile "path/to/domain.key" 

Po:

SSLEngine On 
    SSLCertificateFile "path/to/domain.crt" 
    SSLCertificateKeyFile "path/to/domain.key" 
    SSLCertificateChainFile "path/to/letsencrypt-authority-x3-identrust.pem" 
Powiązane problemy