Desde el Apache 2.4documentos:
El primer vhost (predeterminado) para hosts virtuales basados en nombres SSL debe incluir TLSv1 como protocolo permitido; de lo contrario, Apache no aceptará la información SNI del cliente y será como si el cliente no admitiera SNI en absoluto.
Quiero tener varios sitios habilitados para TLS en mi servidor, cada uno con un certificado diferente. Por razones de seguridad, solo permito TLSv1.1 y TLSv1.2. ¿Existe una forma segura de activar SNI?
Un fragmento de mi configuración:
<VirtualHost *:80>
ServerName www.example.com
Redirect permanent / https://www.example.com/
</VirtualHost>
<VirtualHost *:443>
ServerName www.example.com
DocumentRoot /var/www/example.com
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3 -TLSv1
[other SSL options]
</VirtualHost>
<VirtualHost *:80>
ServerName www.example.org
Redirect permanent / https://www.example.org/
</VirtualHost>
<VirtualHost *:443>
ServerName www.example.org
DocumentRoot /var/www/example.org
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3 -TLSv1
[other SSL options]
</VirtualHost>
Respuesta1
La wiki contrasta TLSv1 con protocolos anteriores, no con protocolos posteriores. SNI funciona bien con TLSv1.1 y TLSv1.2.