温馨提示:本文翻译自stackoverflow.com,查看原文请点击:jetty - Rundeck job API: javax.net.ssl.SSLHandshakeException: no cipher suites in common
ssl jetty sslhandshakeexception rundeck

jetty - Rundeck作业API:javax.net.ssl.SSLHandshakeException:没有通用的密码套件

发布于 2020-04-07 11:21:22

已从Rundeck 3.0.2(API v30)升级3.2.1(API v34)安装Yum / RPM,RHEL 7。

在现有工作安装之后,我按照Rundeck文档和建模配置了SSL。SSL可通过网络正常运行,当我使用curl调用作业REST API时,也能正常运行,但是当我们的MuleSoft应用程序访问REST API时,它会失败并出现handhake_failure:

%% Initialized:  [Session-1, SSL_NULL_WITH_NULL_NULL]
qtp1539575645-26, fatal error: 40: no cipher suites in common
javax.net.ssl.SSLHandshakeException: no cipher suites in common
%% Invalidated:  [Session-1, SSL_NULL_WITH_NULL_NULL]
qtp1539575645-26, SEND TLSv1.2 ALERT:  fatal, description = handshake_failure
qtp1539575645-26, WRITE: TLSv1.2 Alert, length = 2
qtp1539575645-26, fatal: engine already closed.  Rethrowing javax.net.ssl.SSLHandshakeException: no cipher suites in common

我确认MuleSoft信任Rundeck服务器的证书。以前,我没有在Rundeck ssl配置中明确包含/排除任何密码套件,但是我强迫MuleSoft使用特定套件,然后使用-Drundeck.jetty.connector.ssl.includedCipherSuites=(insert suite here)参数将该套件添加到/ etc / sysconfig / rundeckd中,但是我们仍然收到“ no共同的密码套件”错误。

添加-Djavax.net.debug=sslparm /etc/sysconfig/rundeckd会将握手详细信息添加到service.log我可以看到被排除的密码套件的列表,但是没有看到确认中包括我添加的密码套件的列表我确实在运行的JVM的进程详细信息中看到了parm。

感觉就像是MuleSoft方面的客户端问题,我们正在与供应商联系,但是我感到奇怪的是,当我明确包含客户端发送的密码套件时,仍然看不到一个共同点。也许我使用-Drundeck.jetty.connector.ssl.includedCipherSuites不正确?

/etc/sysconfig/rundeckd目前正在测试的文件如下所示:

export RUNDECK_WITH_SSL=true
export RDECK_HTTPS_PORT=4443
RDECK_JVM_OPTS="-Drundeck.jaaslogin=true \
       -Djava.security.auth.login.config=/etc/rundeck/jaas-multiauth.conf \
       -Dloginmodule.name=multiauth \
       -Djavax.net.ssl.trustStore=/etc/rundeck/ssl/truststore \
       -Djavax.net.ssl.trustStoreType=jks \
       -Djava.protocol.handler.pkgs=com.sun.net.ssl.internal.www.protocol \
       -Drundeck.jetty.connector.ssl.includedCipherSuites=TLS_RSA_WITH_AES_256_GCM_SHA384 \
       -Dorg.eclipse.jetty.util.ssl.LEVEL=DEBUG \
       -Djavax.net.debug=ssl"

任何想法表示赞赏!

查看更多

提问者
Charlie
被浏览
179
Charlie 2020-02-19 21:51

问题是客户端MuleSoft要求Rundeck服务器的SSL证书具有'KeyUsage = digitalSignature'扩展名。添加此扩展程序解决了该问题。