Digamos que un sitio web tiene equilibrio de carga entre varios servidores. Quiero ejecutar un comando para probar si está funcionando, como curl DOMAIN.TLD
. Entonces, para aislar cada dirección IP, especifico la IP manualmente. Sin embargo, muchos sitios web pueden ser alojados en el servidor, por lo que todavía proporcionan un encabezado de host, como esto: curl IP_ADDRESS -H 'Host: DOMAIN.TLD'
. Según tengo entendido, estos dos comandos crean exactamente la misma solicitud HTTP. La única diferencia es que en este último saco la parte de búsqueda de DNS de cURL y lo hago manualmente (corríjame si me equivoco).
Todo bien hasta ahora. Pero ahora quiero hacer lo mismo para una URL HTTPS. De nuevo, podría probarlo así curl https://DOMAIN.TLD
. Pero quiero especificar la IP manualmente, así que ejecuto curl https://IP_ADDRESS -H 'Host: DOMAIN.TLD'
. Ahora recibo un error de cURL:
curl: (51) SSL: certificate subject name 'DOMAIN.TLD' does not match target host name 'IP_ADDRESS'.
Por supuesto, puedo evitar esto diciéndole a cURL que no le importe el certificado (la opción "-k"), pero no es lo ideal.
¿Hay alguna manera de aislar la dirección IP a la que está conectado desde el host que está certificado por SSL?
Host
encabezado, por lo que --resolve
es la forma correcta de anclar una dirección IP.