É porque sua diretiva VirtualHost não corresponde à diretiva ServerName e / ou ao CN do certificado. Todos os três precisam ser idênticos, a menos que você tenha um certificado curinga no qual as partes não selvagens devem ser idênticas.
Por que o apache me fornece essa mensagem de erro nos meus registros? É um falso positivo?
[warn] Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
Eu atualizei recentemente do Centos 5.7 para 6.3 e, por isso, para uma versão mais recente do httpd. Eu sempre fiz minhas configurações de virtualhost ssl como abaixo. Onde todos os domínios que compartilham o mesmo certificado (principalmente / sempre caracteres curinga) compartilham o mesmo ip. Mas nunca recebi essa mensagem de erro antes (ou eu, talvez eu não tenha olhado o suficiente nos meus logs?) Pelo que eu aprendi, isso deve funcionar sem o SNI (Server Name Indication)
Aqui estão partes relevantes do meu arquivo httpd.conf. Sem este VirtualHost eu não recebo a mensagem de erro.
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>
É porque sua diretiva VirtualHost não corresponde à diretiva ServerName e / ou ao CN do certificado. Todos os três precisam ser idênticos, a menos que você tenha um certificado curinga no qual as partes não selvagens devem ser idênticas.
Não é um erro, é uma mensagem de aviso.
E você está entendendo porque 1) você atualizou sua versão do Apache e 2) você tem 2 SSL VirtualHosts usando o mesmo endereço IP exato (ao invés de usar 2 IPs).
Como você está compartilhando o IP, os navegadores sem suporte ao SNI receberão apenas o primeiro website e nunca o segundo.
Tags sni ssl-certificate httpd