... J'ai déterminé que la requête HTTP envoyée avant la connexion SSL indique au navigateur l'adresse IP pour laquelle le domaine est enregistré.
C'est faux. Une requête HTTP ne détermine aucune relation entre une URL/un nom d'hôte et une adresse IP. C'est le DNS qui s'en charge. Mais si la redirection est effectuée vers le même nom d'hôte, la même adresse IP sera généralement utilisée. Mais il peut s'agir d'une adresse IP différente si plusieurs adresses IP sont associées au même nom d'hôte dans le DNS.
Par conséquent, toute redirection forcée utilisera ultérieurement le certificat original.
Si vous redirigez de HTTP vers HTTPS, il n'y a pas de certificat original, puisque HTTP n'a pas de certificat, seulement HTTPS. Si vous redirigez de HTTPS sur l'hôte A vers HTTPS sur l'hôte B, alors le premier accès (à l'hôte A) doit aboutir au certificat de l'hôte A et la deuxième demande (à l'hôte B) doit aboutir au certificat de l'hôte B.
J'ai un serveur Apache2 et je forçais une redirection 301 de mon ancien domaine https vers un nouveau domaine https. Cela posait des problèmes quels que soient les paramètres que j'essayais.
Dans ce cas, vous redirigez d'un nom d'hôte vers un autre nom d'hôte. L'adresse IP cible peut être différente, mais elle peut aussi être la même si les deux noms sont hébergés sur le même système. Mais cela n'a pas d'importance.
Tout ce qui compte, c'est que le Le nom d'hôte dans l'URL doit correspondre au(x) sujet(s) du certificat. . La redirection change l'URL et peut donc changer le nom d'hôte de l'URL. Peu importe que les IP soient différentes ou non : si le nom d'hôte de l'URL ne correspond pas au sujet du certificat, la validation échouera.
Donc ce dont vous avez besoin est soit :
- Ayez un certificat qui inclut les deux noms d'hôtes, c'est-à-dire celui à partir duquel vous redirigez et celui vers lequel vous redirigez. Utilisez ce certificat pour les deux noms d'hôtes.
- Vous pouvez aussi avoir des certificats différents pour chaque nom d'hôte et les configurer de manière à ce que le certificat corresponde au nom d'hôte du serveur. Si les deux noms d'hôtes sont servis sur la même adresse IP, les clients doivent prendre en charge les éléments suivants SNI ce que font tous les navigateurs actuels, mais pas tous les robots ou autres outils/bibliothèques.
1 votes
Recherchez le SNI (Server Name Indication).
0 votes
@RobW A trouvé ce qui suit : digicert.com/ssl-support/ - Cela couvre quelque chose que j'ai déjà essayé et qui a toujours une exception de sécurité avec plusieurs navigateurs. Les deux certs sont des certs joker.
0 votes
Utilisez-vous des navigateurs modernes (par exemple Firefox/Chrome, et non IE8 sous Windows XP), et avez-vous vérifié que le serveur envoie la réponse correcte (certificat attendu correspondant au domaine du site web de l'URL demandé, et une redirection vers l'URL correcte) ?