I have found out that the connector can use these ciphers, but Chromium can't. I wrote a small Java program that makes a HttpsConnection with Tomcat without problem.
Output with -Djavax.net.debug=ssl main, WRITE: TLSv1.2 Change Cipher Spec, length = 1 *** Finished verify_data: { 167, 191, 12, 139, 75, 162, 8, 69, 1, 129, 65, 129 } *** main, WRITE: TLSv1.2 Handshake, length = 96 main, READ: TLSv1.2 Change Cipher Spec, length = 1 main, READ: TLSv1.2 Handshake, length = 96 *** Finished verify_data: { 4, 236, 148, 186, 214, 130, 187, 88, 249, 51, 183, 102 } *** %% Cached client session: [Session-1, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384] main, WRITE: TLSv1.2 Application Data, length = 224 main, READ: TLSv1.2 Application Data, length = 11472 It chose among these ciphers: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 If I also add the following ciphers: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 Then my little Java program uses only these and not the GCM ciphers. Chromium does not use GCM either if I throw along CBC ciphers. It seems neither Chromium, Firefox or Opera supports these higher ciphers. No AES_256_GCM and no SHA384. 2014-05-23 0:53 GMT+02:00 Igor Cicimov <icici...@gmail.com>: > On 21/05/2014 8:22 PM, "Sverre Moe" <sverre....@gmail.com> wrote: > > > > I installed Tomcat-7 7.0.42 in OpenSUSE 13.1, configured support for > > TLSv1.2. I then configured a list of strong ciphers only, that I wanted > to > > use. > > > > <Connector port="8443" > > protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" > > clientAuth="false" SSLEnabled="true" scheme="https" secure="true" > > sslProtocol="TLSv1.2" sslEnabledProtocols="TLSv1.2" keyAlias="tomcat" > > keystoreFile="/usr/share/tomcat/.keystore" keystorePass="**********" > > keystoreType="JKS" > > > > ciphers="TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA265,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA256" > > /> > > > > I have tried running Tomcat with Java 7 and Java 8. Both of these should > > support CBC_SHA256 and CBC_SHA384, but only Java 8 supports GCM_SHA384. > > I have downloaded the Java cryptographic extensions policy files for both > > Java 7 and Java 8. > > > > The only way I get a connection is when I add the following ciphers: > > TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA > > TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA > > > > According to the specification all these ciphers are correct names: > > > > http://docs.oracle.com/javase/7/docs/technotes/guides/security/StandardNames.html#ciphersuites > > > > According to the implementation in JSSE provider they are implemented as > > well to work with TLSv1.2 > > > > http://docs.oracle.com/javase/8/docs/technotes/guides/security/SunProviders.html#SunJSSEProvider > > Footnote 1(Java7) Cipher suites with SHA384 and SHA256 are available only > > for TLS 1.2 or later. > > > > > > Also how come SSLLabs SSLTest tells me I do not have forward secrecy and > > are using RC4 ciphers. Thought when I set a limited list of ciphers only > > those can be used. > > > > I tried to edit /usr/sbin/tomcat-sysd (which is started by service > tomcat) > > to enable SSL debugging, but nothing shows up in the log files > > Have you tried starting tomcat with -Djavax.net.debug=ssl option? You can > also narrow it down like -Djavax.net.debug=ssl:handshake for example. > In case you would really like to have those ciphers in is the apr connector > an option for you? >