Wouldn't it even be more secure to allow only TLS 1.2 in the following setup:
Yes, but its not a huge difference. Its moot though, because the el6 apache 2.2 builds dont support 1.2 only. It supports TLS as a group (1.0, 1.1 and 1.2). So you will be enabling 1.2, and the browsers that support it will use it. So for all intensive purposes, you're good to go, but you'll also be enabling 1.0 and 1.1 for the browsers that dont. Which is far more important, because very few browsers support TLS 1.2. Right now, the only ones that do are:
chrome 30+
Mozilla 27+
IE11
Opera 17
Safari 7 (on iOS 5/6/7 and MacOS 10.9 only, the Windows build does not support TLS 1.2)
You can get IE 10-8 to do it, but its disabled by default, and since its likely that if its not turned on the users probably doest know how to turn this on, or even that they should if they cant connect to your TLS enabled web server. So for those users, they might as well not have TLS 1.2 support anyway. If its not enabled by default, they'll get an error and probably not know why.
So in practical terms, even if 2.2 supported it (the el6 builds dont), unless you know your users only use the latest browsers, limiting to just 1.2 would be cutting off quite a few people.
(I noticed that httpd-2.2.15-30.el6 refused to start with +TLSv1.2, although the documentation at
http://httpd.apache.org/docs/2.2/mod/mo ... slprotocol seems to suggest that it is a valid value.)
Forcing 1.2 only is not supported in the versions of 2.2 available on el6 platforms. So you cant force it anyway. Its TLS 1.0, 1.1 and 1.2 as a group.
Is it possible to control how ASL is overwriting the mod_ssl configuration, so that you can allow users to use their own configuration? Or perhaps even offering your suggestion as a configurable parameter in ASL?
Sure, just open a feature request. Right now we just change them to meet PCI requirements, which as you noted gets you an A- and still works with all the browsers out there.