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

IIS6: веб-сайт, представляющий неправильный сертификат SSL

Рассмотрим установку IIS6 с несколькими веб-сайтами. Каждый предназначен для отдельного поддомена со своим собственным сертификатом (а не сертификатом с подстановочными знаками). У каждого из них правильно указан заголовок хоста.

альтернативный текст http://www.imagechicken.com/uploads/1251156847014486300.png

Вопрос: Можно ли иметь несколько поддоменов, работающих на разных веб-сайтах с сертификатами SSL на одном и том же порте (443)? Как бы вы настроили 2 веб-сайта на один и тот же диапазон «все неназначенные» для одного и того же порта (443)?

Обновить: игнорируя ошибку сертификата, при просмотре https://bar, обслуживаемый контент из https://foo сайт.

Когда НЕ используется SSL, переход к http://bar обслуживает правильный контент из bar.

Этому серверу DMZ назначен только один адрес.

Сертификаты SSL привязаны к внутреннему IP-адресу веб-сервера, а не к внешним IP-адресам.

Допустим, у вас есть foo.example.com привязан к Public IP A и bar.example.com на Public IP B, но ваш веб-сервер имеет только IP-адрес 192.168.0.1

Приходит ли запрос IP A или IP B, он по-прежнему будет иметь адрес 192.168.0.1. Это означает, что у IIS нет другого выбора, кроме как использовать сертификат, назначенный foo.example.com.

Чтобы обойти эту проблему, вам необходимо назначить вашему веб-серверу несколько IP-адресов. Это легко сделать. Поговорите со своим системным администратором, чтобы удалить некоторые IP-адреса из диапазона DHCP (или спросите его / ее, какие из них вы можете использовать), затем перейдите к своим свойствам для сетевой карты (Панель управления> Сетевые подключения) и перейдите к свойствам для TCP / IP.

В первую очередь вам нужно будет включить статический IP-адрес (я надеюсь, что это все равно будет сервером), а затем нажмите «Дополнительно» и в поле «IP-адреса» нажмите «Добавить» и введите новые IP-адреса. вы были назначены вашим системным администратором (скажем, 192.168.0.2).

Затем на вашем маршрутизаторе вам необходимо убедиться, что запросы от IP A на порт 443 перейдите в 192.168.0.1 и что все остальные запросы на порт 443 идут в 192.168.0.2.

Затем в вашей конфигурации IIS вам необходимо привязать сертификат SSL из foo.example.com к 192.168.0.1, а остальное привяжите к 192.168.0.2 (или оставьте как «Все неназначенные»).

Если это не сработает или вы уже настроили этот параметр, обновите свой вопрос и оставьте комментарий, чтобы сообщить нам.

Обновить: Я только что видел ваши комментарии, спасибо за обновление. Вам нужно будет убедиться foo.example.com и bar.example.com находятся на двух разных публичных IP-адресах. Причина в том, что поскольку пакеты зашифрованы, вы не можете использовать маршрутизацию на основе имени хоста для отправки запроса на правильный IP-адрес (я считаю, что это так. Если кто-то знает другое, дайте мне знать). Единственная часть запроса, которая видна маршрутизаторам, - это IP-адрес назначения. Вот почему у вас может быть только один SSL на IP-адрес. Таким образом, вам понадобится общедоступный IP-адрес, чтобы это работало, и в вашем DNS запись A для bar.example.com это отличается от foo.example.com.

В поддержку Farseeker, от Thawte:

Хотя сертификат не привязан к IP-адресу, уникальный IP-адрес должен быть назначен домену как SSL основан на IP и не разрешает виртуальные хосты на основе имен

Если у вашего сервера только 1 IP-адрес, значок "Все не назначены"ничего не может сделать, кроме как указывать на тот же единственный IP-адрес.

Похоже, что «bar» переходит на тот же IP-адрес, что и «foo». Поскольку «foo» специально настроен для ответа по этому IP-адресу, он захватывает запрос. «Заголовки хоста» не применяются для запросов SSL (поэтому в IIS есть отдельная панель для стандартных запросов с сопоставлением ip / host / port и другая для сопоставления ssl ip / port, но без имени хоста).

Проверьте свои записи DNS и убедитесь, что «bar» использует IP, отличный от «foo», и ваша проблема должна быть исправлена.

Когда я настраиваю сайты SSL, я даю каждому домену, которому требуется SSL, свой собственный IP-адрес, а для всего остального использую «общий» IP. Записи DNS, конечно, должны использовать правильный адрес, чтобы правильная запись сайта в IIS обрабатывала трафик.