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?
la source
J'ai eu exactement le même problème, et ce qui a fonctionné pour moi était incroyablement simple
éditez /etc/apache2/ports.conf (pour ubuntu ou httpd.conf)
changer "Listen 443" en "Listen 443 http" sous ssl_module
la source
Une autre solution consiste à vous assurer que tous vos: 443 vhosts incluent la configuration TLS.
Ce problème a été récemment introduit dans Debian Wheezy et j'ai obtenu la solution sur http://blog.noizeramp.com/2010/10/03/apache-2-and-ssl-configuration/ .
la source
httpd.conf
mais n'ai pas réussi à inclure les lignes spécifiant la configuration TLS. L'ajout des divers paramètres TLS dans (SSLEngine, SSLCipherSuite, SSLCertificateFile et SSLCertificateKeyFile) a résolu le problème.