SSL握手失败Websphere 2个服务器中的1个

时间:2018-12-18 07:44:18

标签: java web-services ssl websphere

设置:

  • 2个Websphere服务器(8.5个修订包13),两者(乍看之下)都是相同的配置。
  • 1个应用程序(带有2次战争的耳朵)

问题:

2个服务器中的1个SSL握手失败。
我启用了用于调试SSL的日志记录,并得出了服务器之间的以下区别:

好的服务器

  

[12/18/18 8:08:52:466 CET] 0000017d SystemOut O客户端写入密钥:
  [12/18/18 8:08:52:466 CET] 0000017d SystemOut O 0000:3d 82 67 06   09 d0 a8 93 01 8f 42 93 e3 24 6d c0 ..g ....... B ... m。 0010:76 cb 4a   7f b9 a7 3e 61 c7 ac ca 60 08 77 a5 a0 v.J .... a ..... w ..

     

[12/18/18 8:08:52:466 CET] 0000017d SystemOut O服务器写入密钥:
  [12/18/18 8:08:52:466 CET] 0000017d SystemOut O 0000:ad d4 83 5c b2 6f e8 ad a5 7e 5d 50 39 04 78 74 ..... o ..... P9.xt 0010:f7 7f 2d   73 c7 1f aa f0 5c 72 ac ce a5 cc 76 21 ... s ..... r .... v。

错误的服务器

  

[12/18/18 8:08:51:817 CET] 0000013d SystemOut O客户端写入   键:
[12/18/18 8:08:51:817 CET] 0000013d SystemOut O 0000:2f   67 20 ee 13 d6 22 03 d6 aa bc 78 ca bf a9 0a .g ......... x ....

     

[12/18/18 8:08:51:817 CET] 0000013d SystemOut O服务器写入   键:
[12/18/18 8:08:51:817 CET] 0000013d SystemOut O 0000:fc   64 13 e2 98 00 af cc 10 ae 34 80 fb 2c ab 5d .d ........ 4 .....

     

[12/18/18 8:08:51:817 CET] 0000013d SystemOut O ...无IV派生   适用于此协议
[12/18/18 8:08:51:817 CET] 0000013d SystemOut
  O JsseJCE:通过初始化使用来自提供者TBD的签名SHA512withRSA   
[12/18/18 8:08:51:818 CET] 0000013d SystemOut O签名:   使用来自initSignIBMJCE版本1.8中的提供者的签名RSA
  [12/18/18 8:08:51:821 CET] 0000013d SystemOut O   CertificateVerify
[12/18/18 8:08:51:821 CET] 0000013d SystemOut
  O签名算法SHA512withRSA
[12/18/18 8:08:51:822 CET]   0000013d SystemOut O JsseJCE:使用来自的KeyGenerator IbmTls12Prf   提供商通过init提供的TBD
[12/18/18 8:08:51:822 CET] 0000013d   SystemOut O HandshakeMessage:来自的TLS密钥生成器IbmTlsPrf   init IBMJCE版本1.8中的提供程序
[12/18/18 8:08:51:822 CET]   0000013d SystemOut O WebContainer:0,写TLSv1.2握手,   长度= 136
[12/18/18 8:08:51:822 CET] 0000013d SystemOut O   WebContainer:0,写:TLSv1.2更改密码规范,长度= 1
  [12/18/18 8:08:51:822 CET] 0000013d SystemOut O JsseJCE:使用   通过初始化从提供商TBD加密AES / CBC / NoPadding
[12/18/18   8:08:51:822 CET] 0000013d SystemOut O CipherBox:使用密码   初始IBMJCE版本1.8中提供者提供的AES / CBC / NoPadding
  [12/18/18 8:08:51:823 CET] 0000013d SystemOut O JsseJCE:使用   提供者TBD提供的MAC HmacSHA1通过初始化
[12/18/18 8:08:51:823   CET] 0000013d SystemOut O MAC:使用来自的MessageDigest HmacSHA1   提供程序IBMJCE版本1.8
[12/18/18 8:08:51:823 CET] 0000013d   SystemOut O已完成
[12/18/18 8:08:51:823 CET] 0000013d   SystemOut O verify_data:{150、40、219、56、139、255、165、51,   71,246,110,176}
[12/18/18 8:08:51:824 CET] 0000013d SystemOut   O
[12/18/18 8:08:51:824 CET] 0000013d SystemOut O   WebContainer:0,写:TLSv1.2握手,长度= 64
[12/18/18   8:08:51:876 CET] 0000013d SystemOut O WebContainer:0,读取:   TLSv1.2更改密码规范,长度= 1
[12/18/18 8:08:51:876 CET]   0000013d SystemOut O JsseJCE:使用来自的密码AES / CBC / NoPadding   提供商通过init进行的待定
[12/18/18 8:08:51:876 CET] 0000013d   SystemOut O CipherBox:使用来自的密码AES / CBC / NoPadding   init IBMJCE版本1.8中的提供程序
[12/18/18 8:08:51:876 CET]   0000013d SystemOut O JsseJCE:使用提供者提供的MAC HmacSHA1   通过init进行的TBD
[12/18/18 8:08:51:877 CET] 0000013d SystemOut O   MAC:使用提供程序IBMJCE版本的MessageDigest HmacSHA1   1.8
[12/18/18 8:08:51:877 CET] 0000013d SystemOut O WebContainer:0,读取:TLSv1.2握手,长度= 64
[12/18/18   8:08:51:877 CET] 0000013d SystemOut O已完成
[12/18/18   8:08:51:877 CET] 0000013d SystemOut O verify_data:{217,179,   178、151、190、135、169、219、85、206、55、194}
[12/18/18   8:08:51:878 CET] 0000013d SystemOut O
[12/18/18 8:08:51:878   CET] 0000013d SystemOut O JsseJCE:使用KeyGenerator IbmTls12Prf   来自提供者TBD的init初始化
[12/18/18 8:08:51:878 CET] 0000013d   SystemOut O HandshakeMessage:来自的TLS密钥生成器IbmTlsPrf   init IBMJCE版本1.8中的提供程序
[12/18/18 8:08:51:878 CET]   0000013d SystemOut O %%缓存的客户端会话:[Session-129,   SSL_RSA_WITH_AES_128_CBC_SHA]
[12/18/18 8:08:51:895 CET] 0000013d   SystemOut O WebContainer:0,写:TLSv1.2应用程序数据,   长度= 336
[12/18/18 8:08:51:895 CET] 0000013d SystemOut O   WebContainer:0,写:TLSv1.2应用程序数据,长度= 5984
  [12/18/18 8:08:52:053 CET] 0000013d SystemOut O WebContainer:0,   阅读:TLSv1.2应用程序数据,长度= 1008
[12/18/18   8:08:52:054 CET] 0000013d SystemOut O WebContainer:0,称为   close()
[12/18/18 8:08:52:054 CET] 0000013d SystemOut O   WebContainer:0,称为closeInternal(true)
[12/18/18   8:08:52:054 CET] 0000013d SystemOut O WebContainer:0,发送   TLSv1.2 ALERT:警告,说明= close_notify
[12/18/18   8:08:52:054 CET] 0000013d SystemOut O WebContainer:0,写:   TLSv1.2警报,长度= 48
[12/18/18 8:08:52:054 CET] 0000013d   SystemOut O WebContainer:0,称为closeSocket(true)
  [12/18/18 8:08:52:603 CET] 0000013d SystemOut O SSLv3协议是   请求但未启用
[12/18/18 8:08:52:604 CET] 0000013d   SystemOut O

正如我在良好服务器中标记的那样,我在客户端和服务器中看到写入密钥的一部分0010,而不是在不良服务器中。
我认为是因为SSL握手失败导致呼叫失败。

我们使用了很多Web服务,仅在两个端点上存在问题,而其他端点在两个服务器上均运行良好。

如果有人可以指出我的搜索方向,我将非常感激。

编辑:

  • 尝试添加:-Dcom.ibm.jsse2.overrideDefaultTLS=true作为启动参数,但没有帮助。

1 个答案:

答案 0 :(得分:0)

似乎是在标准服务器上配置了错误服务器上的安全性,而不是更安全的美国版本:

  • JDK / jre / lib / security / local_policy.jar
  • JDK / jre / lib / security / US_export_policy.jar

您可以在this Dzone article.

中找到更多说明。