У меня есть x.example
, который обслуживает трафик как для a.example
, так и для b.example
. x.example
имеет сертификаты как для a.example
, так и для b.example
. DNS для a.example
и b.example
еще не настроен.
Если я добавлю запись /etc/hosts
для a.example
, указывающую на IP-адрес x.example
, и запущу curl -XGET https://a.example
, я получу 200.
Однако, если я запускаю curl --header 'Host: a.example' https://x.example
, я получаю:
curl: (51) SSL: альтернативное имя субъекта сертификата не соответствует целевому имени хоста x.example
Я думаю, что он будет использовать a.example в качестве хоста. Возможно, я не понимаю, как работает SNI/TLS.
Поскольку a.example
является заголовком HTTP, рукопожатие TLS еще не имеет к нему доступа? Но сам URL-адрес, к которому у него есть доступ?