Wildcard сертификат с префиксом

Wildcard сертификат с префиксом

Мне интересно, возможно ли создать wildcard-сертификат с префиксом.

Я знаю, что это *.example.comпокроет все на первом уровне (например, one.example.com, two.example.com, three-four.example.com, и т.д.), но не покроет, another.one.example.comпотому что это 2 уровня.

Мне нужен подстановочный сертификат, который распознает префикс; поэтому это будет www.*.example.com.

Это означает, что www.one.example.com, , www.two.example.com, www.three.example.comи т.д. будут работать правильно.

Возможно ли это, и есть ли поставщик сертификатов, который может это сделать?

решение1

Мне нужен wildcard-сертификат, который распознает префикс; так что это будет www.*.example.com. Это значит, www.one.example.com, www.two.example.com, www.three.example.com, и т. д. будут работать правильно.

Возможно ли это, и есть ли поставщик сертификатов, который может это сделать?

Нет. Согласно правилам форума браузеров CA,RFC2818иRFC6125Разрешен только один подстановочный знак и только в самой левой метке. Это означает, что нет ни одного www.*.example.com, ни *.*.example.comдругого. Вместо этого вам нужно добавить все необходимые домены в часть альтернативного имени субъекта сертификата, но у вас может быть несколько записей и вы можете использовать подстановочные знаки, например *.sub1.example.com, *.sub2.example.comи т. д.

Такие сертификаты с несколькими именами wildcard распространены (посмотрите на сертификат для Facebook), что означает, что есть поставщики сертификатов, которые предлагают эти сертификаты. Но они будут стоить дороже, чем другие.

решение2

Создайте .cnf-файл, как показано ниже, который вы используете с openssl req -new -out example.com.csr -key example.com.key -config example.com.cnf. Вы можете создать ключевой файл, используя

openssl genrsa -out example.com.key 4096

Файл example.com.cnf:

[req]
req_extensions = v3_req
distinguished_name = req_distinguished_name

[req_distinguished_name]
commonName = example.com

[v3_req]
basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
subjectAltName = @alt_names

[alt_names]
DNS.1 = example.com
DNS.2 = www.example.com
DNS.2 = *.example.com

решение3

Возможно, вам нужно использовать SubjectAltName.

Взгляни на:http://wiki.cacert.org/FAQ/subjectAltName

Связанный контент