2016-03-25 9 views
1

Я использую эту команду несколько раз, и всегда работает:Как добавить сертификат в хранилище сертификатов Java CA в Openshift (cacerts)?

cd ../../jdk/jre/lib/security 
keytool -import -trustcacerts -alias my.alias -file /../../myCert.crt -keystore cacerts 

Сейчас в OpenShift с JBoss-а 7: журнал

cd /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.95/jre/lib/security 
keytool -import -trustcacerts -alias my.alias -file /../.../myCert.crt -keystore cacerts 

Ошибка:

Enter keystore password: 
Owner: CN=... 
Issuer: CN=... 
Serial number:.... 
... 
Trust this certificate? [no]: yes 
Certificate was added to keystore 
keytool error: java.io.FileNotFoundException: cacerts (Permission denied) 

Просматривая archivies , Я вижу, что файл cacerts является simlink. Это SimLink имеет 0777 разрешений, но исходный файл имеет Rw-р - r-- или 0644 разрешений:

/etc/pki/java/cacerts 

Так что мои вопросы:

1.- Как я могу изменить permisssions в OpenShift? Я попытался, и я получил сообщение об ошибке.

2.- Есть ли способ добавить мой сертификат в файл java cacerts в openshift?

3.- Openshift предлагает некоторую конфигурацию для этого?

Заранее благодарен!

+0

Вы были в состоянии решить эту проблему? –

ответ

0

Это проблема с разрешениями для операционных систем, а не проблема с открытием, PKI или keytool. Возможно, вы должны использовать доступ root/administrator и изменять разрешения на файл (например, chmod), чтобы вы могли получить к нему доступ.

+0

Openshift теперь имеет доступ к суперпользователю: http://stackoverflow.com/a/31322169/3957754. – JRichardsz

+0

@JRichardsz Ok, затем создайте новое хранилище cacerts на другой машине и отсканируйте его на сервере openshift. Настройте серверный продукт (например, веб-сервер), чтобы использовать новое хранилище хранилищ cacerts в качестве доверенного магазина. Это зависит от продукта, так что это лучшее направление, которое я могу вам дать. Если вы не можете SCP создать другой файл cacerts или изменить существующий, то я не вижу способа сделать это. \ – KyleM

+0

благодарит @KyleM. Я попробую!! Я скажу вам результат. С уважением. – JRichardsz

1

Я наткнулся на этот вопрос и нашел решение

Сначала я скопировал хранилище ключей по умолчанию, и добавил пользовательский сертификат впоследствии:

RUN mkdir -p source/configuration/security && \ 
     keytool --importkeystore -noprompt \ 
     -srckeystore /etc/pki/ca-trust/extracted/java/cacerts \ 
     -srcstorepass changeit \ 
     -destkeystore source/configuration/security/<custom>.jks \ 
     -deststorepass changeit 

    ADD certificates/

    RUN keytool -import -v -file /certs/<my-certficate> \ 
     -keystore source/configuration/security/<custom>.jks \ 
     -noprompt -storepass changeit 

 Смежные вопросы

  • Нет связанных вопросов^_^