Après avoir récemment mis à niveau Apache2 vers la version 2.2.31, j'ai trouvé un comportement étrange dans la configuration de SSL VirtualHost.
Certains des sites Web que j'héberge montraient le certificat de l'hôte par défaut même si le client était au Server Name Identification
courant, et cela ne s'est produit qu'avec quelques-uns d'entre eux. Cela apparaît comme l'avertissement de passeport commun de Firefox / Chrome à propos de votre arnaque si vous naviguez sur votre banque à domicile, mais ce n'était tout simplement pas le cas.
Pour être clair, si le serveur host.hostingdomain.org
a son propre SSL, tente d'accéder au https://www.hostedsite.org
certificat de rapports pour host.hostingdomain.org
, mais quelques-uns ont https://www.hostedsite.me
signalé le certificat correct.
Tous les sites sont hébergés sur la même adresse IP, sur le port 443. La vérité est que VirtualHosting fonctionne du côté HTTP et redirige automatiquement les clients SNI vers SSL, il est donc rétrocompatible avec les clients non SNI.
L'examen des journaux d'erreurs pour les VirtualHosts incriminés a montré le texte suivant
[Tue Dec 25 16:02:45 2012] [error] Server should be SSL-aware but has no certificate configured [Hint: SSLCertificateFile] (/path/to/www.site.org.conf:20)
et en fait, le vhost a été correctement configuré avec SSLCertificateFile.
La question est évidente: comment y remédier?