У меня есть хостинг-сервер (Windows Server 2008 + IIS7), на котором я размещаю десятки сайтов ... некоторые из них должны быть защищены с помощью SSL.
На данный момент я открыл новый IP-адрес и сертификат для каждого такого сайта, но поскольку все больше и больше сайтов нуждаются в HTTPS, я ищу лучшее решение.
Есть идеи, как я могу использовать сертификат сервера для всего сайта? или какие-то другие решения?
Проблема в том, что согласование SSL происходит до передачи заголовка HTTP. Это означает, что в то время, когда серверу необходимо выбрать пару сертификатов и ключей для подтверждения своих полномочий, единственной имеющейся у него информацией о том, какой хост пытается достичь клиент, является IP-адрес.
Для IIS 7 нет жизнеспособного решения этой проблемы. В IIS 8 вы сможете использовать указание имени сервера (расширение TLS), чтобы обойти эту проблему, но даже тогда она будет работать только с новейшими клиентами.
Один из вариантов - указание имени сервера, о котором упоминал Стефан.
Другой вариант - сертификаты UCC (также известные как SAN) (см. это объяснение). Удивительно, но на Планы GoDaddy SSL вы можете получить до 100 доменов в одном сертификате.
Но, вероятно, вы сможете получить такие сертификаты только если у вас есть домены для всех сайтов, которые вы размещаете.