Aus dem Apache 2.4Dokumente:
Der erste (Standard-)Vhost für SSL-namensbasierte virtuelle Hosts muss TLSv1 als zulässiges Protokoll enthalten, andernfalls akzeptiert Apache die SNI-Informationen vom Client nicht und es ist, als würde der Client SNI überhaupt nicht unterstützen.
Ich möchte auf meinem Server mehrere TLS-fähige Sites haben, die jeweils ein anderes Zertifikat bereitstellen. Aus Sicherheitsgründen lasse ich nur TLSv1.1 und TLSv1.2 zu. Gibt es eine sichere Möglichkeit, SNI zu aktivieren?
Ein Ausschnitt aus meiner Konfiguration:
<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>
Antwort1
Das Wiki vergleicht TLSv1 mit früheren Protokollen, nicht mit späteren Protokollen. SNI funktioniert gut mit TLSv1.1 und TLSv1.2.