Le 31/10/2013 10:02, Gaël a écrit : [...]
Pour avoir deux certificats SSL sur une même machine, il y a au moins 2 possibilités : - Avoir un certificat par adresse IP. C'est la meilleure solution car de fait, le protocole SSL ne donne pas l'entête HTML "host:" avant la négociation, donc apache ne sait pas quel certificat il doit donner. Alors qu'avec un site par IP, apache voit qu'il y a une demande de négociation SSL sur telle IP, et vu que sur cette IP y'a qu'un seul certificat (donc un seul (sous-)domaine), ça se passe bien. - Faire le pari qu'aucun de tes visiteurs n'utilise un navigateur de merde (IEx...) et utiliser SNI (chercher sur google), qui normalise le fait d'envoyer l'entête host avant la négociation.
[... ]Avec Squeeze, apache mod_ssl/openssl ne supportaient pas le SNI, j'avais du utiliser mod_gnutls.
Et ça fonctionnait, du moins, avec Firefox. Avec Wheezy, pas de soucis avec apache mod_ssl. Depuis, je suis passé à nginx, et le SNI fonctionne aussi.Un seul client m'embête, car ne supporte pas le SNI, c'est la partie Firefox Sync sous Android. Ça utilise la lib Java client HTTP d'Apache, qui ne supporte pas le SNI. Pour contourner le problème, j'ai fais en sorte que le vhost concernant mon serveur Sync soit le premier dans l'ordre d'analyse d'apache (ordre de lecture, donc ordre alphabetique dans /etc/apache/sites-enables), comme ça c'était le premier sélectionner sans SNI.
Bug référencé : Android : https://code.google.com/p/android/issues/detail?id=12908 Apache Httpclient : https://issues.apache.org/jira/browse/HTTPCLIENT-1119