fragen stichworte

Warum sagt Apache httpd mir, dass meine namensbasierte Virtualhosts nur mit SNI-aktivierten Browsern funktioniert (RFC 4366)

Warum zeigt mir Apache diese Fehlermeldung in meinen Protokollen an? Ist das falsch positiv?

[warn] Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)

Ich habe kürzlich ein Upgrade von Centos 5.7 auf 6.3 und damit auf eine neuere httpd-Version durchgeführt. Ich habe meine ssl-virtualhost-Konfigurationen wie folgt gemacht. Wo alle Domänen, die dasselbe Zertifikat verwenden (meistens/immer Wildcard-Zertifikate), dieselbe IP-Adresse verwenden. Diese Fehlermeldung habe ich jedoch noch nie erhalten (oder habe ich vielleicht in meinen Protokollen nicht genug gesucht?). Nach allem, was ich gelernt habe, sollte dies ohne SNI (Server Name Indication) funktionieren

Hier sind relevante Teile meiner httpd.conf-Datei. Ohne diesen VirtualHost erhalte ich keine Fehlermeldung.

NameVirtualHost 10.101.0.135:443

<VirtualHost 10.101.0.135:443>
  ServerName sub1.domain.com

  SSLEngine on
  SSLProtocol -all +SSLv3 +TLSv1
  SSLCipherSuite ALL:!aNull:!EDH:!DH:!ADH:!eNull:!LOW:!EXP:RC4+RSA+SHA1:+HIGH:+MEDIUM
  SSLCertificateFile/opt/RootLive/etc/ssl/ssl.crt/wild.fareoffice.com.crt
  SSLCertificateKeyFile/opt/RootLive/etc/ssl/ssl.key/wild.fareoffice.com.key
  SSLCertificateChainFile/opt/RootLive/etc/ssl/ca/geotrust-ca.pem
</VirtualHost>

<VirtualHost 10.101.0.135:443>
  ServerName sub2.domain.com

  SSLEngine on
  SSLProtocol -all +SSLv3 +TLSv1
  SSLCipherSuite ALL:!aNull:!EDH:!DH:!ADH:!eNull:!LOW:!EXP:RC4+RSA+SHA1:+HIGH:+MEDIUM
  SSLCertificateFile/opt/RootLive/etc/ssl/ssl.crt/wild.fareoffice.com.crt
  SSLCertificateKeyFile/opt/RootLive/etc/ssl/ssl.key/wild.fareoffice.com.key
  SSLCertificateChainFile/opt/RootLive/etc/ssl/ca/geotrust-ca.pem
</VirtualHost>

antworten

Dies liegt daran, dass Ihre VirtualHost-Direktive nicht Ihrer ServerName-Direktive und/oder dem CN des Zertifikats entspricht. Alle drei müssen identisch sein, es sei denn, Sie haben ein Wildcard-Zertifikat, bei dem die nicht-wilden Teile identisch sein müssen.

Es ist kein Fehler, es ist eine Warnmeldung.

Und Sie bekommen es, weil 1) Sie Ihre Apache-Version aktualisiert haben und 2) Sie 2 SSL VirtualHosts mit der gleichen genauen IP-Adresse haben (im Gegensatz zur Verwendung von 2 IPs).

Da Sie die IP-Adresse teilen, erhalten Browser ohne SNI-Unterstützung nur die erste Website und niemals die zweite.