Запуск сервера IIS6 в Windows 2003. Все веб-сайты используют ASP.NET
У меня есть несколько веб-сайтов, на которых работают отдельные веб-сайты HTTP:
www.domain1.com www.domain2.com www.domain3.com
У меня отдельный HTTPS-сайт
www.secure.com
Все эти веб-сайты работают на одном сервере.
Теперь я хочу прозрачным образом интегрировать содержимое www.secure.com в каждый из доменов. Таким образом, каждый веб-сайт, несмотря на наличие собственного SSL-соединения, отображает один и тот же веб-сайт. Сложность заключается в том, что www.secure.com необходимо знать, с какого веб-сайта произошло соединение, чтобы применить соответствующий брендинг. Идея состоит в том, чтобы иметь только один веб-сайт и местоположение, но при этом сохранить основной бренд веб-сайта. https://domain1.com выглядит намного лучше с маркетинговой точки зрения (и позволяет пользователям не запутаться в том, что такое наш безопасный веб-сайт)
SSL www.domain1.com/secure -> отображает www.secure.com (фирменный домен1)
SSL www.domain2.com/secure -> отображает www.secure.com (фирменный домен2)
SSL www.domain3.com/secure -> отображает www.secure.com (фирменный домен3)
Как лучше всего достичь этого? Я готов использовать дополнительное программное обеспечение, если это необходимо. Подойдет ли в этой ситуации обратный прокси-сервер?
Самый дешевый и простой способ добиться этого - использовать поддомены. Таким образом вы можете получить сертификат с подстановочным знаком и использовать только один IP-адрес.
Для тех, кто все еще сталкивается с этой проблемой, ознакомьтесь с этой статьей о том, как Запуск нескольких веб-сайтов SSL на IIS6 с использованием подстановочного сертификата
IIS 6 позволяет использовать несколько хостов SSL на одном IP-адресе, но требует использования SSL-сертификатов с подстановочными знаками. У Microsoft есть техническая статья Вот о том, как его настроить. Помня об этом, вы можете получить SSL-сертификат * .securedomain.com и использовать:
Ваше приложение может просматривать заголовки хостов, видеть site1 .. site2 .. site3 .. и применять необходимый брендинг.
Если подумать, если вы используете SSL-сертификат с подстановочными знаками, вам даже не нужно иметь несколько сайтов, если код вашего веб-сайта знает, как определить, какой HOST он показывает конечному пользователю (прочтите заголовок HOST из запроса) .
Если вы можете получить несколько IP-адресов, это не проблема. Просто настроить это ^^ Все, что вам нужно убедиться, это то, что привязки SSL установлены на конкретный IP, а не на «все IP», как по умолчанию.
Поскольку рукопожатие SSL выполняется перед любой информацией заголовка (доменные имена ...), вы можете получить только один веб-сайт https на каждый IP-адрес.
Так что то, что вы планировали сделать, не является решением ...
Что вы можете сделать, если хотите иметь только 1 сертификат SSL. если иметь такую конфигурацию: https: // защищенный домен / site1 -> site1 контент
https: // защищенный домен / site2 -> site2 контент
https: // защищенный домен / site3 -> содержимое site3
На самом деле я не знаю, как это сделать в IIS (или даже если это возможно), но я подумал, что должен отметить, что вам понадобятся отдельные IP-адреса для каждого из ваших доменов, если это будет работать. Это связано с тем, что рукопожатие SSL происходит до передачи информации заголовка, поэтому вы можете установить только один сертификат на данный IP-адрес.