Я хотел бы реализовать динамические поддомены для сайта, который должен быть безопасным (ssl).
Я могу настроить вызов dns api для добавления имени A для поддомена, но мне было интересно, может ли кто-нибудь порекомендовать подход для добавления информации ssl (на основе сертификата ssl с подстановочными знаками)?
Все поддомены будут для основного домена имени.
например.
Веб-сервер - это apache, обслуживающий php.
Основная проблема заключается в том, что перед отправкой базового http-запроса браузер сначала должен преодолеть препятствие SSL. На этом этапе имя хоста сравнивается с сертификатом, который используется для шифрования. Таким образом, прежде чем веб-серверу сообщается имя запрашиваемого сайта, браузер пользователя уже видит жалобы на то, что имя хоста в сертификате отличается.
Преемник SSL называется TLS, и у него есть функция, позволяющая разрешить то, что вам нужно: указание имени сервера (SNI).
Прочтите здесь для получения дополнительной информации о TLS и SNI на этих страницах Википедии:
Вот довольно хороший демонстрационный сайт:
У вас не может быть более одного доменного имени на IP-адрес по HTTPS. Заголовок Host не отправляется, поэтому сервер не знает доменного имени, для которого он обслуживает контент HTTPS, - только IP-адрес.
редактировать: Подстановочный сертификат позволит обслуживать тем же контент с одного IP-адреса на несколько поддоменов, но я понимаю ваш вопрос, что вы хотите, чтобы разный контент обслуживался для разных поддоменов.
Вы можете получить подстановочный сертификат для CN = *. Domain.com
Вы можете настроить запись DNS с подстановочными знаками (или несколько отдельных записей), чтобы * .domain.com переходил на один IP-адрес, а затем получил сертификат SSL с подстановочными знаками для * .domain.com
Затем на сервере все 3 URL-адреса попадут на один и тот же веб-сайт, где вам нужно будет обработать в серверном скрипте, какой сайт показывать на основе используемого имени хоста.
Проверьте поддержку альтернативного имени субъекта у вашего поставщика сертификатов.
Некоторые предлагают это, другие нет (Verisign предлагает, но вы должны пройти через их канал продаж PKI!).
Дигисерт делает:
http://www.digicert.com/subject-alternative-name.htm
Ура