Могу ли я использовать один и тот же сертификат подстановочного знака для * .domain.com и domain.com

13

Вы можете сделать сертификат SSL, используя * .domain.com в качестве имени.

Но, к сожалению, это не распространяется на https://domain.com

Есть ли какое-то решение для этого?

неизвестный
источник

Ответы:

11

Кажется, я вспоминаю, что * .domain.com на самом деле нарушает RFC (я думаю, что только lynx жалуется, хотя :)

Создайте сертификат с domain.com в качестве CN и * .domain.com в subjectAltName:dNSNameполе имен - это работает.

Для openssl добавьте это в расширения:

subjectAltName          = DNS:*.domain.com
MikeyB
источник
Ой, я только что попробовал, и это не работает, по крайней мере, в Firefox.
Неизвестно
Подробно: убедитесь, что * .domain.com находится в поле subjectAltName: dNSName
MikeyB
@ Supermathie, как мне это сделать в командной строке?
Неизвестно
Вы не можете сделать это непосредственно в командной строке, но вы можете использовать -extfile и -extensions.
MikeyB
+1 ... так мы обрабатываем наши сертификаты подстановочных знаков. Я не могу рекомендовать, как это сделать с openssl, хотя.
Даг Люксем
7

К сожалению, вы не можете сделать это. Правила обработки подстановочных знаков в поддоменах аналогичны правилам использования файлов cookie для поддоменов.

www.domain.com       matches    *.domain.com
secure.domain.com    matches    *.domain.com
domain.com      does not match  *.domain.com
www.domain.com  does not match  domain.com

Для этого вам нужно получить два сертификата, один для, *.domain.comа другой для domain.com. Вам нужно будет использовать два отдельных IP-адреса, и два хоста будут обрабатывать эти домены отдельно.

Дейв Чейни
источник
2
Вы можете абсолютно сделать это - это делается все время - см. Ответ выше. Это достигается с помощью CN и расширения альтернативного имени субъекта. techbrahmana.blogspot.com/2013/10/…
Джон Клоян
4

В эти дни подстановочные знаки будут содержать * .domain.com и domain.com в поле альтернативного имени субъекта (SAN). Например, взгляните на подстановочный SSL-сертификат quora.com

Ты увидишь

Альтернативные имена субъектов: * .quora.com, quora.com

Йог
источник
Только что подтвердил это на одном из моих собственных сертификатов подстановочных знаков (от Comodo) - без www работал просто отлично.
ceejayoz
2

Возможно, не тот ответ, который вы ищете, но я на 99% уверен, что нет пути. Перенаправьте http://domain.com/ на https://www.domain.com/ и просто используйте * .domain.com в качестве сертификата SSL. Это далеко от совершенства, но, надеюсь, должно охватывать большинство интересующих вас случаев. Единственная альтернатива - использовать разные IP-адреса для domain.com и www.domain.com. Тогда вы можете использовать разные сертификаты для каждого IP.

отметка
источник
Ты прав. «domain.com» является поддомином «.com», поэтому подстановочный знак, который будет работать для него, будет «* .com». Вот почему сертификат для * .domain.com работает для "www.domain.com", но не для "www.acct.domain.com".
sysadmin1138
1

Нет, потому что они совершенно разные пространства имен. перенаправление tld также не вариант, поскольку SSL является транспортным шифрованием, поэтому он должен декодировать ssl, прежде чем apache, например, сможет даже увидеть узел запроса для его перенаправления.

Также в качестве примечания: foo.bar.domain.com также недопустим для сертификата с подстановочными знаками (firefox из памяти - единственный, который позволяет это.

Brendan
источник