This issue is now RESOLVED.

On IHS (IBM HTTP Server, IBM version of Apache Webserver), we only had 2 TLS 
ciphers that are no compatible with Tomcat TLV1.2. So I added '' 
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" to IHS httpd.conf by looking at this: 
https://www.ibm.com/support/knowledgecenter/en/SSEQTJ_8.5.5/com.ibm.websphere.ihs.doc/ihs/rihs_ciphspec.html
 and IHS can communicate with Tomcat W/O any issues. Woohoo!

The reason I picked the above cipher is because it's one the list of ciphers 
tomcat's JVM supports. 

Igor, I couldn’t use one of the java based cipher tool so used a small script 
to get a list of ciphers available for a jvm(this can be used for any Linux 
server as long as openssl is available):

#!/bin/sh
for v in tls1_2; do
   for c in $(openssl ciphers 'ALL:eNULL' | tr ':' ' '); do
     openssl s_client -connect  SERVERNAME:https_port \
       -cipher $c -$v < /dev/null > /dev/null 2>&1 && echo -e "$v:\t$c"
   done
 done

I executed above script to find out a list of ciphers on Tomcat's jvm and based 
on that I chose to use TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 on IHS.

I appreciate all the help on finding me the true issue!

Thank you,
Vamsi Gali


-----Original Message-----
From: André Warnier (tomcat) [mailto:a...@ice-sa.com] 
Sent: Thursday, October 12, 2017 10:05 AM
To: users@tomcat.apache.org
Subject: Re: FW: [error] SSL0266E: Handshake Failed, Could not establish SSL 
proxy connection

On 12.10.2017 15:33, Gali, Vamsi A wrote:
> :)
> IHS is IBM HTTP Server.
>
> Thank you,

Thank you too. I feel a lot less like a dummy now.
And after reading a bit on "IHS" now, it would seem that this is at least 90% 
Apache httpd 2.2, which may make it clearer to other people that maybe they 
could help too.

>
>
> -----Original Message-----
> From: André Warnier (tomcat) [mailto:a...@ice-sa.com]
> Sent: Thursday, October 12, 2017 9:32 AM
> To: users@tomcat.apache.org
> Subject: Re: FW: [error] SSL0266E: Handshake Failed, Could not 
> establish SSL proxy connection
>
> And for the rest of us dummies trying to follow this conversation, what might 
> "IHS" be ?
> Whatever Google returns doesn't seem really relevant.
>
> On 12.10.2017 15:25, Gali, Vamsi A wrote:
>> Igor,
>> Thank you for suggesting me to turn on the ssl dubug. We are using Java 1.8 
>> which by default uses TLS1.2. Looks like both IHS & Tomcat are using tls1.2 
>> but there is a cipher mismatch. We have Tam directly connecting to Tomcat 
>> and the connectivity works w/o any SSL handshake errors. Hence, I'm 
>> suspecting IHS and will be trying by adding same tls1.2 ciphers that 
>> Tomcat/java supports.
>>
>> Thank you,
>> Vamsi Gali
>>
>>
>> -----Original Message-----
>> From: Igor Cicimov [mailto:icici...@gmail.com]
>> Sent: Wednesday, October 11, 2017 7:33 PM
>> To: Tomcat Users List
>> Subject: Re: FW: [error] SSL0266E: Handshake Failed, Could not 
>> establish SSL proxy connection
>>
>> On Thu, Oct 12, 2017 at 9:17 AM, Igor Cicimov <icici...@gmail.com> wrote:
>>
>>> On 12 Oct 2017 8:25 am, "Gali, Vamsi A"
>>> <vamsi_a_g...@keybank.com.invalid>
>>> wrote:
>>>
>>> The debug log produced following & it's evident that handshake is 
>>> failing due to no ciphers suites in common.
>>>
>>> Allow unsafe renegotiation: false
>>> Allow legacy hello messages: true
>>> Is initial handshake: true
>>> Is secure renegotiation: false
>>> http-bio-xxxx-Acceptor-0, setSoTimeout(60000) called Ignoring 
>>> unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
>>> for TLSv1
>>> Ignoring unsupported cipher suite:
>>> TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
>>> for TLSv1
>>> Ignoring unsupported cipher suite:
>>> TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384
>>> for TLSv1
>>> Ignoring unsupported cipher suite:
>>> TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384
>>> for TLSv1
>>> Ignoring unsupported cipher suite:
>>> TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
>>> for TLSv1
>>> Ignoring unsupported cipher suite:
>>> TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
>>> for TLSv1
>>> Ignoring unsupported cipher suite:
>>> TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
>>> for TLSv1.1
>>> Ignoring unsupported cipher suite:
>>> TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
>>> for TLSv1.1
>>> Ignoring unsupported cipher suite:
>>> TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384
>>> for TLSv1.1
>>> Ignoring unsupported cipher suite:
>>> TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384
>>> for TLSv1.1
>>> Ignoring unsupported cipher suite:
>>> TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
>>> for TLSv1.1
>>> Ignoring unsupported cipher suite:
>>> TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
>>> for TLSv1.1
>>> http-bio-xxxx-exec-2, READ: TLSv1.2 Handshake, length = 57
>>> *** ClientHello, TLSv1.2
>>> RandomCookie:  GMT: -2042962343 <(204)%20296-2343> bytes = { 199, 
>>> 95, 13, 144, 113, 194, 145, 53, 176, 117, 165, 93, 196, 76, 17, 104, 
>>> 214, 95, 96, 238, 97, 6, 240, 239, 53, 188, 180, 41 } Session ID:  
>>> {} Cipher Suites: [TLS_EMPTY_RENEGOTIATION_INFO_SCSV, Unknown 
>>> 0x56:0x0, SSL_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, 
>>> TLS_RSA_WITH_AES_256_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, 
>>> SSL_RSA_WITH_RC4_128_MD5] Compression Methods:  { 0 }
>>> ***
>>> %% Initialized:  [Session-13, SSL_NULL_WITH_NULL_NULL] %% Invalidated:
>>> [Session-13, SSL_NULL_WITH_NULL_NULL] http-bio-xxxx-exec-2, SEND
>>> TLSv1.2 ALERT:  fatal, description = handshake_failure 
>>> http-bio-xxxx-exec-2, WRITE: TLSv1.2 Alert, length = 2 
>>> http-bio-xxxx-exec-2, called closeSocket()
>>>
>>>
>>>
>>> http-bio-xxxx-exec-2, handling exception: 
>>> javax.net.ssl.SSLHandshakeException:
>>> no cipher suites in common
>>> http-bio-xxxx-exec-2, IOException in getSession():
>>> javax.net.ssl.SSLHandshakeException: no cipher suites in common
>>>
>>>
>>> There you go, no comment needed.
>>>
>>> Also, since you are using JSSE in your tomcat connector, you never
>> mentioned the Java version you are using? From the logs looks like IHS 
>> offers TLSv1.2 ciphers but tomcat does not support them so maybe you are 
>> running an outdated version of Java, maybe 1.6?
>>
>> There some tools out there you can use to find the default SSL/TLS cipher 
>> suits that JVM will use (and I think I've seen one from Christopher 
>> Schultz). The tool should provide you with output like this:
>>
>> $ java Ciphers
>> Default    Cipher
>>        SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA
>> *    SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA
>>        SSL_DHE_DSS_WITH_DES_CBC_SHA
>>        SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA
>> *    SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA
>>        SSL_DHE_RSA_WITH_DES_CBC_SHA
>>        SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA
>>        SSL_DH_anon_WITH_3DES_EDE_CBC_SHA
>>        SSL_DH_anon_WITH_DES_CBC_SHA
>>        SSL_RSA_EXPORT_WITH_DES40_CBC_SHA
>> *    SSL_RSA_WITH_3DES_EDE_CBC_SHA
>>        SSL_RSA_WITH_DES_CBC_SHA
>>        SSL_RSA_WITH_NULL_MD5
>>        SSL_RSA_WITH_NULL_SHA
>> *    TLS_DHE_DSS_WITH_AES_128_CBC_SHA
>> *    TLS_DHE_DSS_WITH_AES_128_CBC_SHA256
>> *    TLS_DHE_DSS_WITH_AES_128_GCM_SHA256
>> *    TLS_DHE_RSA_WITH_AES_128_CBC_SHA
>> *    TLS_DHE_RSA_WITH_AES_128_CBC_SHA256
>> *    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
>>        TLS_DH_anon_WITH_AES_128_CBC_SHA
>>        TLS_DH_anon_WITH_AES_128_CBC_SHA256
>>        TLS_DH_anon_WITH_AES_128_GCM_SHA256
>> ...
>>
>> then pick up one of the supported default ciphers (marked with star) and use 
>> it in IHS (as it is or translated in IHS way, no idea about that) so you get 
>> a match. I know nothing about IHS so can't help there.
>>
>> If that doesn't work then I would say IHS does some funky stuff with the 
>> cipher suites in a way that tomcat can't understand them.
>>
>> Igor
>>
>>
>> This communication may contain privileged and/or confidential information. 
>> It is intended solely for the use of the addressee. If you are not the 
>> intended recipient, you are strictly prohibited from disclosing, copying, 
>> distributing or using any of this information. If you received this 
>> communication in error, please contact the sender immediately and destroy 
>> the material in its entirety, whether electronic or hard copy. This 
>> communication may contain nonpublic personal information about consumers 
>> subject to the restrictions of the Gramm-Leach-Bliley Act. You may not 
>> directly or indirectly reuse or redisclose such information for any purpose 
>> other than to provide the services for which you are receiving the 
>> information.
>>
>> 127 Public Square, Cleveland, OH 44114 If you prefer not to receive 
>> future e-mail offers for products or services from Key send an e-mail 
>> to mailto:dnereque...@key.com with 'No Promotional E-mails' in the 
>> SUBJECT line.
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to