【问题标题】:no cipher suites in common on Liberty WebsphereLiberty Websphere 上没有共同的密码套件
【发布时间】:2026-02-03 03:55:01
【问题描述】:

我正在尝试在我的 Websphere-Liberty 服务器上使用自签名 CA 设置 SSL,但我不断收到 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 命令生成的(如以下 * 票证所示:Is a signed SSL certificate required for Worklight development?):

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

所以这基本上是我到目前为止所尝试的,有人知道我缺少什么吗?

【问题讨论】:

    标签: ssl openssl websphere ibm-mobilefirst websphere-liberty


    【解决方案1】:

    您只使用您的程序导入公共证书,而不是私钥。您的密钥库中需要私钥。
    您可以使用以下解决方案:

    【讨论】:

    • 谢谢,这确实解决了我的问题。要完整;我使用以下 openssl 命令转换了我的证书和密钥:openssl pkcs12 -export -in certificate.crt -inkey privateKey.key -out certificate.p12 -name hiper-certificate。然后我通过 portecle 将此 p12 文件添加到密钥库中。
    最近更新 更多