Supposons qu'un site Web soit équilibré entre plusieurs serveurs. Je veux exécuter une commande pour vérifier si cela fonctionne, tel que curl DOMAIN.TLD
. Donc, pour isoler chaque adresse IP, je spécifie l'adresse IP manuellement. Mais de nombreux sites peuvent être hébergés sur le serveur, donc je fournir encore un en- tête d'hôte, comme ceci: curl IP_ADDRESS -H 'Host: DOMAIN.TLD'
. Si j'ai bien compris, ces deux commandes créent exactement la même requête HTTP. La seule différence est que dans le dernier cas, je retire la partie de la recherche DNS de cURL et le fais manuellement (corrigez-moi si je me trompe).
Tout va bien jusqu'à présent. Mais maintenant, je veux faire la même chose pour une URL HTTPS. Encore une fois, je pourrais le tester comme ça curl https://DOMAIN.TLD
. Mais je veux spécifier l'adresse IP manuellement, alors je cours curl https://IP_ADDRESS -H 'Host: DOMAIN.TLD'
. Maintenant, je reçois une erreur cURL:
curl: (51) SSL: certificate subject name 'DOMAIN.TLD' does not match target host name 'IP_ADDRESS'.
Je peux bien sûr contourner ce problème en disant à cURL de ne pas se soucier du certificat (l'option "-k"), mais ce n'est pas idéal.
Existe-t-il un moyen d'isoler l'adresse IP connectée à l'hôte certifié par SSL?
Host
tête, c’est donc --resolve
le bon moyen de verrouiller une adresse IP.