Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
apache: disable TLS 1.0 and 1.1 and strengthen ciphers #941
Security is always a balancing act. The current cipher list in the snap prioritizes older clients while maintaining reasonable security for all. These settings are routinely verified using both SSL Labs and testssl.sh, and the snap continues to get an A+ rating on SSL Labs. However, one of the ways we support older clients is by still using TLS 1.0 and 1.1, and also using CBC ciphers.
It's been a few years, and as several folks have pointed out, it's time to re-evaluate this balancing act for the cipher list in particular. To go through this exercise, I started with the modern config from Mozilla's config generator, locked it down enough that nothing could possibly complain, and then loosened it until I was reasonably happy with the clients still supported while still ensuring that neither analysis tool took issue with it. Our support client list has gone from this:
You'll notice that this greatly reduces the number of clients supported, but in my opinion they are old enough it shouldn't be an issue. I did massage the cipher suite to make sure we continued to support Internet Explorer on Windows 7 (such users are still fairly well-represented in today's statistics), and I'm more or less happy with this. Please speak up if you're not. I will halt this if anyone takes issue with it, and it will be easy to roll back in the future as well if it ends up being a scream test.
Anyway, both SSL Labs and testssl.sh are happy, and we've managed to get rid of TLS 1.0 and 1.1, limit ciphers to those that support forward secrecy, well as get rid of CBC ciphers. As a result, this PR resolves #616 and also resolves #737.