Mengapa apache memberi saya pesan kesalahan ini di log saya? Apakah ini positif palsu?
[warn] Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
Saya baru saja memutakhirkan dari Centos 5.7 ke 6.3, dan dengan itu ke versi httpd yang lebih baru. Saya selalu membuat konfigurasi virtualhost ssl saya seperti di bawah ini. Di mana semua domain yang memiliki sertifikat yang sama (sebagian besar / selalu sertifikat wildcard) berbagi ip yang sama. Tetapi tidak pernah mendapatkan pesan kesalahan ini sebelumnya (atau pernahkah saya, mungkin saya belum melihat cukup dalam log saya?) Dari apa yang saya pelajari ini harus bekerja tanpa SNI (Indikasi Nama Server)
Inilah bagian yang relevan dari file httpd.conf saya. Tanpa VirtualHost ini saya tidak mendapatkan pesan kesalahan.
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>
sumber
<VirtualHost 10.101.0.135:443>
baris menjadi<VirtualHost sub2.domain.com:443>
? Berpotensi?VirtualHost
deklarasi saya .VirtualHost
kartu liar tetapiServerName
arahan cocok dengan sertifikat CN. Semua 3 cocok dan biola! PS: Jawaban ini serverfault.com/questions/578061/… memberi tahu Anda cara mendapatkan CN yang Anda masukkan dalam sertifikat RSA AndaIni bukan kesalahan, ini pesan peringatan.
Dan Anda mendapatkannya karena 1) Anda memperbarui versi Apache Anda dan 2) Anda memiliki 2 SSL VirtualHosts menggunakan alamat IP yang persis sama (bukan menggunakan 2 IP).
Karena Anda berbagi IP, browser tanpa dukungan SNI hanya akan mendapatkan situs web pertama dan tidak pernah yang kedua.
sumber
Host
header diperiksa secara normal.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)
Kamu bisa. Penggunaan normal ini adalah ketika semua memiliki sertifikat yang sama, wildcard atau sertifikat nama alternatif biasanya. Tetapi katakan Anda memiliki dua vhost dengan sertifikat SSL mereka sendiri - domain1.com dan domain2.com, dengan domain1.com yang dikonfigurasi terlebih dahulu. Peramban yang non-SNI meminta domain2.com - mereka mendapatkan kesalahan ketidakcocokan domain sertifikat, karena mereka mengirim domain1 cert - tetapi jika mereka mengklik melalui itu, mereka mendapatkan konten domain2.