Назад | Перейти на главную страницу

IIS дает неверный сертификат для запроса HTTPS

Я застрял в ситуации, которую не могу понять. Вот моя проблема.

Я получил сертификат SSL от доверенного центра и установил его на свой сервер. Затем я настроил свой веб-сайт на использование этого сертификата в порту 443 с неиспользуемым IP-адресом.

Затем я перешел на свой веб-сайт, чтобы проверить, работает ли он, но я вижу, что IIS дает неправильный сертификат для этого запроса. Таким образом, браузер блокирует отображение ответа.

Я подумал, что IIS сделал что-то не так при настройке, и проверил сопоставление сертификатов с помощью следующей команды:

netsh http show sslcert

Я получаю хэш сертификата и запускаю следующую команду, чтобы проверить, является ли сертификат тем, который мне нужен:

get-item cert:\LocalMachine\My\DC0D3FF5D752CD58FD291C48F30646FD9E0D8AED

Это действительно то, что мне было нужно. Но, как ни странно, я все еще получаю неправильный сертификат при навигации по веб-странице.

Можете ли вы указать мне, где еще мне следует искать и что может быть причиной этого?

Просто чтобы следить за этим для других, которые не могли решить эту проблему с помощью вышеуказанного решения, я столкнулся с аналогичной проблемой, когда сервер доставлял неправильный сертификат для HTTPS-подключений к веб-сайту со значением заголовка хоста.

В моем случае оказалось, что привязка была настроена на получение соединений от * вместо фактического IP-адреса сервера. Изменение привязки к IP-адресу решило проблему.

Это настолько иронично, что ответ возник в моей глупой голове после того, как я отправил этот вопрос. Хост DNS Запись указывала на неправильный IP-адрес, поэтому я получал неправильный сертификат. Изменил IP-адрес для записи DNS Host A, и теперь все работает.

У нас была такая же проблема: https-сайт представлял неправильный сертификат на сервере Win2012 R2 с несколькими https-сайтами с использованием SNI.

Даже при изменении файла hosts и перенаправлении заголовка хоста на IP-адрес, используемый на веб-сайте, нам все равно был предоставлен сертификат с другого сайта, поэтому здесь нет проблем с DNS.

Как оказалось, веб-сайт, с которого мы получили (неправильный) сертификат, имел одну привязку к тому же IP с отключенным SNI, поэтому этот сертификат, по-видимому, был представлен как сертификат по умолчанию.

Проверка SNI на привязке к этому сайту решила проблему на другом сайте.

Так что у меня была похожая ситуация, с которой я столкнулся с заказчиком. У них было несколько сайтов HTTPS, размещенных на IIS в Windows Server 2012 R2. Они разделяют вещи между сайтом перенаправления и сайтом https, поэтому вы увидите в основном привязку HTTP с одиночным перенаправлением на сайт по https.

Они столкнулись с тем, что работал только один из их сайтов, а все остальные сайты не работали (код ошибки: ssl_error_bad_cert_domain). Запустил кроличью нору, глядя на сертификаты, все действительные, оказывается в перенаправлении для рабочего сайта, у них также было перенаправление https, это вызывало проблему. Как только единственное перенаправление https было удалено с их сайта перенаправления http, все сайты снова начали работать.

Итак, если у вас есть переадресация, возможно, стоит проверить, делают ли они то, что вы от них хотите.

Зачем?

"Поскольку все HTTPS-сайты используют * для IP-адреса в привязках сертификатов SSL, а клиент добавил SSL-привязку, у которой был определенный IP-адрес, сопоставленный с сайтом перенаправления, похоже, что IIS решил передать весь HTTPS-трафик на это перенаправление. site, поскольку у него был указанный IP-адрес, а у других - нет ". - Джей Ти Шоуп