Due to a bug in mod_ssl, the ability to remove TLS 1.0 (and only
support TLS 1.1 and/or TLS 1.2) has not been available. The fix has now
made it to CentOS 6 and you can now fine-tune your cryptographic
protocols with ease.
Before the fix my /etc/httpd/conf.d/ssl.conf file had this line:
SSLProtocol all -SSLv2 -SSLv3
This allows all SSL protocols except SSLv2 and SSLv3 to be used with
httpd. This isn't a bad solution but there are a couple of sites that
I'd prefer to further lock down by removing TLS 1.0 and TLS
[STRIKEOUT:1.2] 1.1. With the fix now in mod_ssl my settings can now
look like this:
SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
...and I'll only support TLS 1.2 and beyond. Of course doing this will
significantly reduce the number of clients that can connect to my
server. According to SSLLabs I'm blocking all IE users before IE 11,
Android before 4.4.2, Java 7, and Firefox 24.2.0 ESR. But luckily I
really don't have a problem with any of these browsers for a couple of
things I do so I'll likely tighten up security there and leave my more
public sites alone.
NSS and mod_nss for httpd wasn't discussed because it's not in use on
my systems. it should be noted that mod_nss can be similarly
configured as mod_ssl however mod_nss does not support TLS 1.2 and
you'll max out at TLS 1.1.