2013-06-03 4 views
0

Я настраиваю SSL для JBOSS 7.1 на сервере linux. Я создал ключ и Csr следующие командыКонфигурация SSL в Jboss 7.1 - java.io.IOException: Неверный формат хранилища ключей

openssl genrsa -out app.key -des 2048 

openssl req -new -key app.key -out appCert.csr 

Я зарегистрировал сертификат доверить и получил корневой сертификат, цепи и сервера. Сертификат сервера хранится в файле cert.crt

В JBOSS 7.1 standalone.xml я изменил тег соединителя, как показано ниже.

<subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false"> 
    <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/> 
    <connector name="https" scheme="https" protocol="HTTP/1.1" socket-binding="https" enable-lookups="false" secure="true"> 
     <ssl name="APP-ssl" password="abc123" certificate-key-file="/app/JBoss-7.1/standalone/configuration/ssl/app.key" certificate-file="/app/JBoss-7.1/standalone/configuration/ssl/cert.crt"/> 
</subsystem> 

Когда я запустил сервер jboss, я получаю следующее сообщение об ошибке.

ERROR [org.apache.tomcat.util.net.jsse.JSSESocketFactory] (поток обслуживания MSC 1-2) Не удалось загрузить тип хранилища ключей JKS с помощью пути /app/JBoss-7.1/standalone/configuration/ssl/app .key из-за недопустимого формата хранилища ключей: java.io.IOException: недопустимый формат хранилища ключей

Такая же ошибка возникает, когда я устанавливаю сертификат цепи. Пожалуйста, помогите мне в решении этой проблемы.

ответ

1

В соответствии с JBoss HTTPS connector documentation атрибут сертификата-ключа-файла должен указывать на хранилище ключей, а не на ключ. Поэтому вам нужно будет импортировать этот ключ в хранилище ключей JKS. Есть примеры того, как это сделать в JBoss SSL Configuration documentation.

0

native = true в теге подсистемы.

Если вы получаете от OpenSSL инструмента, Вам необходимо включить родной = верно в Jboss 7.1.1

Регулярно проверяйте here

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