Почему apache выдает мне это сообщение об ошибке в моих журналах? Это ложный положительный результат?
[warn] Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
Я недавно обновился с Centos 5.7 до 6.3, и тем самым до более новой версии httpd. Я всегда делал свои конфигурации ssl virtualhost, как показано ниже. Где все домены с одинаковым сертификатом (в основном / всегда с подстановочными сертификатами) имеют один и тот же ip. Но никогда не получал это сообщение об ошибке раньше (или я, может быть, я не посмотрел достаточно в моих журналах?) Из того, что я узнал, это должно работать без SNI (индикация имени сервера)
Вот соответствующие части моего файла httpd.conf. Без этого VirtualHost я не получаю сообщение об ошибке.
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>
источник
<VirtualHost 10.101.0.135:443>
строку, чтобы быть<VirtualHost sub2.domain.com:443>
? Потенциально?VirtualHost
декларациях.VirtualHost
подстановочный знак, ноServerName
директива совпадает с сертификатом CN. Все 3 совпали и альт! PS: В этом ответе serverfault.com/questions/578061/… рассказывается, как получить CN, который выЭто не ошибка, это предупреждающее сообщение.
И вы получаете это, потому что 1) вы обновили свою версию Apache и 2) у вас есть 2 виртуальных хоста SSL, использующих один и тот же точный IP-адрес (в отличие от использования 2 IP-адресов).
Поскольку вы делитесь IP-адресами, браузеры без поддержки SNI получат только первый веб-сайт, а не второй.
источник
Host
заголовок проверяется нормально.Otherwise you could do 100s of SSL NameBasedVirtualHosts on 1 single IP address, and we know that's not true (without SNI support by server and client)
Вы можете. Обычно это используется, когда все имеют один и тот же сертификат, подстановочный знак или сертификат альтернативного имени. Но скажем, у вас есть два vhosts с их собственными сертификатами SSL - domain1.com и domain2.com, с настройкой domain1.com в первую очередь. Браузер, не поддерживающий SNI, запрашивает domain2.com - они получают ошибку несоответствия домена сертификата, потому что им отправили сертификат domain1 - но если они щелкают по нему, они получают содержимое domain2.