Я пытаюсь настроить SSL на моем сервере Websphere-Liberty с помощью ЦС с собственной подписью, но я продолжаю получать исключение SSLHandshakeException. Я не эксперт по SSL, поэтому, возможно, я просто что-то забыл.
Вот некоторые подробности о моей настройке:
product = WebSphere Application Server 8.5.5.0 (wlp-1.0.3.20130510-0831)
java.version = 1.7.0_51
os = Windows 8 (6.2; amd64) (en_US)
Мне удалось развернуть войну центра приложений Worklight, и это доступно через браузер. Когда я пытаюсь получить доступ к центру приложений через https, я получаю следующее исключение:
[9/1/14 19:07:11:799 EEST] 00000021 com.ibm.ws.channel.ssl.internal.SSLHandshakeErrorTracker E CWWKO0801E: Unable to initialize SSL connection. Unauthorized access was denied or security settings have expired. Exception is javax.net.ssl.SSLHandshakeException: no cipher suites in common
У меня есть следующая конфигурация в моем server.xml
<feature>ssl-1.0</feature>
<keyStore id="defaultKeyStore" password="trasys" />
Как только я добавлю свойство хранилища ключей, Websphere создаст файл хранилища ключей (key.jks) с сертификатом по умолчанию. Я удалил сертификат с помощью утилиты java keytool и добавил свой собственный самозаверяющий сертификат CA. Этот сертификат был сгенерирован в cygwin с помощью следующей команды openssl (как указано в следующем билете stackoverflow: Требуется ли подписанный SSL-сертификат для разработки Worklight?):
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout privateKey.key -out certificate.crt
Чтобы добавить сертификат в пустое хранилище ключей, я использовал следующую команду:
keytool -import -trustcacerts -alias mydomain -file certificate.crt -keystore keystore.jks
Так что это в основном то, что я пробовал до сих пор, кто-нибудь знает, что мне не хватает?