@@ -1834,6 +1834,12 @@ request is associated with a virtual host which has an incompatible
18341834SSL/TLS configuration under the policy used, an HTTP error response
18351835with status code 421 ("Misdirected Request") will be sent.</p >
18361836
1837+ <p >The policy also applies to TLS connections where an SNI extension
1838+ is not sent during the handshake, implicitly using the default or
1839+ first virtual host definition. If the Host header in an HTTP request
1840+ on such a connection identifies any other non-default virtual host,
1841+ the compatibility policy is tested.</p >
1842+
18371843<p >The <code >strict</code > policy blocks all HTTP requests which are
18381844identified with a different virtual host to that identifed by SNI.
18391845The <code >insecure</code > policy allows all HTTP requests regardless
@@ -1844,9 +1850,17 @@ href="https://httpd.apache.org/security/vulnerabilities_24.html">CVE-2025-23048<
18441850
18451851<p >The (default) <code >secure</code >, and <code >authonly</code >
18461852policies compare specific aspects of the SSL configuration for the two
1847- virtual hosts, which are grouped into two categories:
1853+ virtual hosts, which are grouped into two categories:</ p >
18481854
18491855<ul >
1856+ <li ><strong >server certificate/key, or protocol/cipher
1857+ restrictions</strong >: directives which determine the server
1858+ certificate or key (<directive
1859+ module =" mod_ssl" >SSLCertificateKeyFile</directive > etc), cipher or
1860+ protocol restrictions (<directive
1861+ module =" mod_ssl" >SSLCipherSuite</directive > and <directive
1862+ module =" mod_ssl" >SSLProtocol</directive >)</li >
1863+
18501864 <li ><strong >client vertification and authentication
18511865 settings</strong >: directives which affect TLS client certificate
18521866 verification or authentication, such as <directive
@@ -1855,43 +1869,35 @@ virtual hosts, which are grouped into two categories:
18551869 module =" mod_ssl" >SSLCACertificatePath</directive >, <directive
18561870 module =" mod_ssl" >SSLSRPVerifierFile</directive >; any use of <directive
18571871 module =" mod_ssl" >SSLOpenSSLConfCmd</directive ></li >
1858-
1859- <li ><strong >server certificate/key, or protocol/cipher
1860- restrictions</strong >: directives which determine the server
1861- certificate or key (<directive
1862- module =" mod_ssl" >SSLCertificateKeyFile</directive > etc), cipher or
1863- protocol restrictions (<directive
1864- module =" mod_ssl" >SSLCipherSuite</directive > and <directive
1865- module =" mod_ssl" >SSLProtocol</directive >)</li >
18661872</ul >
18671873
1868- This table illustrates whether an HTTP request will be blocked or
1874+ < p > This table illustrates whether an HTTP request will be blocked or
18691875allowed when the virtual host configurations differ as described,
1870- under each different policy setting:
1876+ under each different policy setting:</ p >
18711877
18721878<table border =" 1" style =" zebra" >
18731879<columnspec ><column width =" .3" /><column width =" .2" /><column width =" .5" />
18741880</columnspec >
18751881<tr >
18761882 <th >Policy mode</th >
18771883 <th >Any VirtualHost mismatch</th >
1878- <th >Client verification/<br />authentication settings</th >
18791884 <th >Server certificate/key, <br />or protocol/cipher restrictions</th >
1885+ <th >Client verification/<br />authentication settings</th >
18801886</tr >
18811887<tr >
1882- <td ><code >strict</code ><td >blocked< /td ><td >blocked</td ><td >blocked</td ></td >
1888+ <td ><code >strict</code ></td ><td >blocked</td ><td >blocked</td >< td >blocked </td >
18831889</tr >
18841890<tr >
1885- <td ><code >secure</code ><td >allowed</td ><td >blocked</td ><td >blocked</ td > </td >
1891+ <td ><code >secure</code ></ td >< td > allowed</td ><td >blocked</td ><td >blocked</td >
18861892</tr >
18871893<tr >
1888- <td ><code >authonly</code ><td >allowed< /td ><td >blocked </td ><td >allowed</td ></td >
1894+ <td ><code >authonly</code ></td ><td >allowed </td ><td >allowed</td >< td >blocked </td >
18891895</tr >
18901896<tr >
1891- <td ><code >insecure</code ><td >allowed< /td ><td >allowed</td ><td >allowed</td ></td >
1897+ <td ><code >insecure</code ></td ><td >allowed</td ><td >allowed</td >< td >allowed </td >
18921898</tr >
18931899</table >
1894- </ p >
1900+
18951901<example ><title >Example</title >
18961902<highlight language =" config" >
18971903SSLVHostSNIPolicy authonly
0 commit comments