-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Florian,

On 5/19/16 12:49 PM, Florian Kleedorfer wrote:
> TL;DR: The TLS handshake with client authentication using
> self-signed client certificates (using APR/openssl) stopped working
> from tomcat 8.0.30 to tomcat 8.0.32. Cause is suspected in a change
> of openssl or APR between versions.
> 
> # Context:
> 
> We're using tomcat 8 in a setting where the client has a
> self-signed client certificate that is transmitted to the server to
> identify the client. The certificate is used to gather
> client-specific data in the appliation. We aren't interested in
> setting up our own PKI for that, or using official CAs. Self-signed
> certs on the client are fine, as far as we're concerned.
> 
> Our code that works in 8.0.30 stops working when switching to
> 8.0.32, as documented in this issue on github 
> https://github.com/researchstudio-sat/webofneeds/issues/547
> 
> I am suspecting its either an APR or an openssl issue, or
> something related to the way we generate our certificates. I looked
> up the versions used in the last working and the first non-working
> tomcat minor releases:
> 
> tomcat 8.0.30: tcnative version 1.1.33.0, OpenSSL 1.0.1m 19 Mar
> 2015 (works for us) tomcat 8.0.32: tcnative version 1.2.4.0 ,
> OpenSSL 1.0.2e 3 Dec 2015 (doesn't work for us)
> 
> # Config:
> 
> I'm experiencing this on Windows 7, using the -x64 zip downloads.
> 
> Here's the configuration of the tomcat connector:
> 
> <Connector clientAuth="wanted"

clientAuth="want"?

Note that this is only documented for the JSSE-based connectors, not
the APR connector.

> port="8443" minSpareThreads="5" enableLookups="true"
> disableUploadTimeout="true" acceptCount="100" maxThreads="200" 
> scheme="https" secure="true" SSLEnabled="true" 
> SSLCertificateFile="C:/Users/fkleedorfer/wonkey/t-cert.pem" 
> SSLCertificateKeyFile="C:/Users/fkleedorfer/wonkey/t-key.pem" 
> SSLPassword="changeit" SSLVerifyClient="optionalNoCA"

This looks okay.

> SSLVerifyDepth="2"

Why do you bother to specify SSLVerifyDepth if you aren't trying to
use CLIENT-CERT authentication? This is just for informational
purposes from the client, right?

> sslProtocol="TLS"/>
> 
> # Logs:
> 
> Here's the trace of the failing TLS handshake (including the
> exception), with -Djavax.net.debug=all
> 
> client side:
> 
> https://gist.github.com/fkleedorfer/8b4c3932a1de4b51617eac5e03c0be29

With
> 
no changes to the client, this works on Tomcat 8.0.30 but fails
with Tomcat 8.0.32?

Since you presumably have a system with OpenSSL 1.0.1m on it (the
"working" system), please install Tomcat 8.0.32 on that system and
re-try with Tomcat 8.0.32 + tcnative 1.2.4 + OpenSSL 1.0.1m.

Since you presumably have a system with OpenSSL 1.0.2e on it (the
"non-working" system), please try installing Tomcat 8.0.30 on the
system with OpenSSL 1.0.2e and re-try with Tomcat 8.0.30 + tcnative
1.1.33 + OpenSSL 1.0.2e.

This will help narrow-down which component contains the change which
is causing these failures.

I suspect the problem will be narrowed-down to either a change in
OpenSSL, a change in tcnative, or a change in APR.

- -chris
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - http://gpgtools.org
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBCAAGBQJXYyHSAAoJEBzwKT+lPKRYox8QAKy53z/72jz02P30U8Bf32ig
c66drfBiTLmFXC5UrY90v5AgfVFQKS4G0dF9ObP59yzhmsjpen4c17AP2yrfKkbD
G69c45cpZkA+2SnV6dL4uowT7gBXVvIHkxUO1S+7pxcV9P3oqVze5KIU9W/XkwMm
+CBVeZDI5Kxugzme1lLtbu5N74OJFkSW6CQwmY11AKDb8iC4H4wB77UIb4NuwXu4
M90GG2hRF1dU5DQWhEIGY4veC4DvMlRt4lLap6/Ht/1TM8CsS0hiMPEI6UM1P7ZH
CrFIo+nk0lQ+ItSByjT4FOeQUUAVLyWMWNxemxw5eFI0glv8rETuDvSQFFLTK0n3
ELM7NuizTqMYExxXvUUeU5AFrjJtbnCIjYvcd00VweRHhzFx5NgRZmBx4B1cZu4L
/DQTIAdyElK5+yODAuAPkQEbQSizzmjsopj8u/6aX5Ce/WWDmQys2nO//rN7k/Pd
elqap3NppRavceF4XrgKUEH2C2GL4EfEGLNmr+lL+oadDWc//1/OkjAjEgYQq61L
mMugEXYAg1WLKjTJccYhaKC9sVbiCbrrj9FyMKwskdg8Pj6tJhmC8uu8jVZDDwIz
yyU2lJ95VWr3HcbAAJ2wLL/JhAbBCJBsHMeRoT95kvNOcBGEOKkFjs5sYqq2IXTE
7HKsE6safnwDuo1iaLPl
=niTn
-----END PGP SIGNATURE-----

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

Reply via email to