10

I'm using nginx, and want to implement SSL session resumption. How should we I test if it is working?

I have enabled these settings:

ssl_session_cache    shared:SSL:10m;
ssl_session_timeout  10m;
9

I'm not sure of a way to test locally, but if your site is public, ssllabs provide a nice testing tool:

https://www.ssllabs.com/ssldb/index.html

16

You can use openssl to test locally :

openssl s_client -connect example.com:443 -reconnect

Or :

openssl s_client -connect example.com:443 -sess_out /tmp/ssl_s
openssl s_client -connect example.com:443 -sess_in /tmp/ssl_s

For the first command you'll get output like this :

drop connection and then reconnect
CONNECTED(00000003)
---
Reused, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES128-GCM-SHA256

For the last one, you'll get this in case of session resumption:

SSL handshake has read 142 bytes and written 583 bytes
---
Reused, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES128-GCM-SHA256

or this in case of failure:

SSL handshake has read 5855 bytes and written 722 bytes
---
New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-GCM-SHA384

You can see the handshake is way bigger when it's new

  • It would be helpful if you could explain what the output means, and how to use it to determine if session resumption is working. – Kevin Cox Aug 20 '14 at 2:23
  • 1
    check for "Reused, TLSv1/SSLv3, Cipher is <cipher>" – Bastien Durel Aug 20 '14 at 7:13

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.