Java SSLHandshakeException при вызове конечной точки REST - PullRequest
0 голосов
/ 09 июля 2020

Я пытаюсь вызвать конечную точку REST на удаленном сервере с помощью веб-приложения, работающего на встроенном SSL-экземпляре tomcat. Я вижу ниже сбой установления связи SSL с включенным ведением журнала отладки.

update handshake state: change_cipher_spec
upcoming handshake states: client finished[20]
upcoming handshake states: server change_cipher_spec[-1]
upcoming handshake states: server finished[20]
http-bio-8443-exec-7, WRITE: TLSv1.2 Change Cipher Spec, length = 1
*** Finished
verify_data:  { 44, 217, 50, 252, 162, 126, 165, 133, 122, 177, 141, 177 }
***
update handshake state: finished[20]
upcoming handshake states: server change_cipher_spec[-1]
upcoming handshake states: server finished[20]
http-bio-8443-exec-7, WRITE: TLSv1.2 Handshake, length = 40
http-bio-8443-exec-7, READ: TLSv1.2 Alert, length = 2
http-bio-8443-exec-7, RECV TLSv1.2 ALERT:  fatal, handshake_failure
%% Invalidated:  [Session-6, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384]
http-bio-8443-exec-7, called closeSocket()
http-bio-8443-exec-7, handling exception: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failur

Java версия 1.8.0_201 и файлы политики юрисдикции неограниченной силы JCE уже размещены (TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 доступен) .

Ниже приведен результат nmap на сервере.

nmap --script ssl-enum-ciphers -p 443 example.com
Starting Nmap 7.80 ( https://nmap.org ) at 2020-07-09 22:01 +08
Nmap scan report for example.com (x.x.x.x)
Host is up (0.31s latency).

PORT    STATE SERVICE
443/tcp open  https
| ssl-enum-ciphers:
|   TLSv1.2:
|     ciphers:
|       TLS_RSA_WITH_AES_256_GCM_SHA384 (rsa 2048) - A
|       TLS_RSA_WITH_AES_256_CBC_SHA256 (rsa 2048) - A
|       TLS_RSA_WITH_AES_128_GCM_SHA256 (rsa 2048) - A
|       TLS_RSA_WITH_AES_128_CBC_SHA256 (rsa 2048) - A
|       TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (secp256r1) - A
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (secp256r1) - A
|       TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 (secp256r1) - A
|       TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (secp256r1) - A
|       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (secp256r1) - A
|     compressors:
|       NULL
|     cipher preference: server
|_  least strength: A

Какие варианты я могу найти?

...