Развертывание Openshift F8: не удается получить доступ к кластеру для режима обнаружения: sun.security.validator.ValidatorException - PullRequest
0 голосов
/ 18 мая 2018

Я развертываю пример приложения Springboot, использующего Fabric8 Maven.Сбой сборки с использованием SSLHandshakeException.

F8: Cannot access cluster for detecting mode: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

Failed to execute goal io.fabric8:fabric8-maven-plugin:3.1.80.redhat-000010:build (default) on project fuse-camel-sb-rest: Execution default of goal io.fabric8:fabric8-maven-plugin:3.1.80.redhat-000010:build failed: An error has occurred. sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal io.fabric8:fabric8-maven-plugin:3.1.80.redhat-000010:build (default) on project fuse-camel-sb-rest: Execution default of goal io.fabric8:fabric8-maven-plugin:3.1.80.redhat-000010:build failed: An error has occurred.

Итак, я загрузил общедоступный сертификат из веб-консоли Openshift и добавил его в JVM, используя

C:\...\jdk.\bin>keytool -import -alias rootcert -file C:\sample\RootCert.cer -keystore cacerts

, и получил сообщение, что его успешно добавили вkeystore и команда list отображают добавленные сертификаты.

    C:\...\jdk.\bin>keytool -list -keystore cacerts
Enter keystore password:
Keystore type: JKS
Keystore provider: SUN

Your keystore contains 2 entries

rootcert, May 18, 2018, trustedCertEntry,
Certificate fingerprint (SHA1): XX:XX:XX:..........

Но сборка mvn: fabric8 deploy все еще не работает с тем же исключением.

Может кто-нибудь пролить свет на эту проблему?Я что-то упустил?

Ответы [ 4 ]

0 голосов
/ 04 апреля 2019

Я решил в Windows добавить сертификат Openshift со следующим:

keytool -import -trustcacerts -keystore "%JAVA_HOME%/jre/lib/security/cacerts" -storepass changeit -alias Root -import -file openshift.der

Файл openshift.der находится в BASE64.

0 голосов
/ 01 февраля 2019

Решение Джека отлично работает на Windows.Я экспортировал сертификат из веб-браузера, когда находился на веб-консоли openshift.Затем я добавил сертификат в cacerts в $ JAVAHOME / jre / lib / security: keytool -import -alias my.alias -file C: \ sample \ RootCert.cer -keystore cacerts

0 голосов
/ 25 февраля 2019

На MacOS работает следующее:

Сертификат для установки - это сертификат, найденный в строке URL браузера;
В Firefox (как минимум) нажмите на замок padlock iconслева от URL-адреса, затем перейдите вниз Соединение> / Дополнительная информация / Просмотр сертификата / Подробности , наконец Экспорт... позволяет вам сохранить сертификат локально.

В командной строке определите, какой JRE maven использует:

$ mvn --version
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-17T19:33:14+01:00)
Maven home: /Users/.../apache-maven-3.5.4
Java version: 1.8.0_171, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home/jre
Default locale: en_GB, platform encoding: UTF-8
OS name: "mac os x", version: "10.12.6", arch: "x86_64", family: "mac"

Скорее всего, вам нужен root'обновить файл cacerts.

$ sudo keytool -import -alias my-openshift-clustername -file /Users/.../downloads/my-cluster-cert.crt -keystore $JAVA_HOME/jre/lib/security/cacerts
Password: {your password for sudo}
Enter keystore password: {JRE cacerts password, default is changeit}
... keytool prints certificate details...
Trust this certificate? [no]:  yes
Certificate was added to keystore

Убедитесь, что сертификат действительно был успешно добавлен:

$ keytool -list -keystore $JAVA_HOME/jre/lib/security/cacerts
Enter keystore password: changeit
Keystore type: JKS
Keystore provider: SUN

Your keystore contains 106 entries

...other entries, in no particular order...
my-openshift-clustername, 25-Feb-2019, trustedCertEntry,
Certificate fingerprint (SHA1): F4:17:3B:D8:E1:4E:0F:AD:16:D3:FF:0F:22:73:40:AE:A2:67:B2:AB
...other entries...
0 голосов
/ 24 мая 2018

Добавление сертификатов в "cacerts" в $ JAVAHOME / jre / lib / security решило проблему.

...