Я могу использовать подстановочные знаки с самоподписанными сертификатами SAN?

У нас есть dev сервер, который доступен через Интернет, но является ограниченным IP, таким образом, безопасность здесь является просто способом позволить нам воспроизводить продуктивную среду в противоположность попытке быть безопасной. Высокоуровневый домен, давайте назовем его dev.com, не используется, но devs имеют каждый сайт, созданный в их собственном определенном субдомене. Так скажем, существует site1.com, site2.com и site3.com, затем разработчики george и nico имел бы полные URL как:

  • www.site1.com.george.dev.com
  • www.site2.com.george.dev.com
  • www.site1.com.nico.dev.com
  • и т.д.

Я первоначально думал, что подстановочный знак самоподписал сертификат, сделает, но позже нашел что *.dev.com примененный только к something.dev.com и не sub-sub домены. Я решил следовать инструкциям в этом ответе. Когда я использую:

DNS.1 = www.site2.com.nico.dev.com
DNS.2 = www.site1.com.george.dev.com

все хорошо работает, но к сожалению существует много застройщиков многих сайтов, таким образом, было бы хорошо сверх 100 записей для DNS.x здесь. Я хотел знать, возможно ли использовать подстановочные знаки в [ alternate_names ] раздел моего openssl.cnf. Я попробовал следующее:

DNS.1 = dev.com
DNS.2 = www.site1.com.george.dev.com
DNS.3 = *.*.*.nico.dev.com

Принимая во внимание, что DNS.2 обработанный, DNS.3 не делает, давая мне ошибку NET::ERR_CERT_COMMON_NAME_INVALID в Chrome.

Есть ли способ сделать это, или будете, я должен генерировать очень длинный список DNS.x записи для покрытия всех сайтов?

Я слышал, что путем создания моего собственного CA это будет возможно. Я следовал большим инструкциям на этом ответе. С моим собственным CA, неповрежденным, я создал сертификат с DNS.1 то же как общее название и DNS.2 и DNS.3 с подстановочными знаками как так:

DNS.1 = dev.com
DNS.2 = *.dev.com
DNS.3 = *.*.*.*.nico.dev.com

Я затем импортировал cacert.pem от первого шага руководства, связанного с вышеупомянутым в к хрому как доверенный корневой центр сертификации и перезапущенный браузер. Для каждой доменной конфигурации я установил SSLCertificateKeyFile и SSLCertificateFile к serverkey.pem и servercert.pem соответственно и протестированный несколько доменов:

Таким образом, кажется, что первый уровень подстановочного знака работал хорошо, но под которым, это не сделало. Это - то же для Chrome и IE (которые используют сертификаты Windows), и для Firefox (который управляет его собственным).

Таким образом, мой вопрос остается, использует sub-sub (-sub*) домены этим возможным способом?

5
задан 12 July 2017 в 00:45
2 ответа

Вы можете иметь только один уровень wildcard.

*.example.com будет охватывать anything.example.com, но не один.anything.example.com.

*.subdomain.example.com будет обрабатывать anything.subdomain.example.com.

.
2
ответ дан 3 December 2019 в 01:37

Открытые подписанные сертификаты:

Технический ответ

Да. Ничто не препятствует созданию сертификатов SAN поддоменов с подстановочными знаками с любым сочетанием уровней подстановочных знаков и доменов. Если вы управляете своим собственным внутренним центром сертификации, то вы можете создать сертификат SAN с любой комбинацией поддоменов, подстановочных знаков и т. Д.

Практический ответ на основе моего собственного опыта

Нет. или маловероятно ... Я не знаю ни одного CA, который продаст вам один из них. Я попросил несколько центров сертификации об этом решении, и каждый из них сразу же отклонил запрос. Я подозреваю, что они боятся потерять деньги, предлагая такие сертификаты. Они предпочитают, чтобы у вас был один подстановочный знак для каждой зоны (поддомен или нет)или один сертификат SAN с количеством записей до n . n - это число, которым конкретный CA будет ограничивать вас. Мне не удалось найти центр сертификации, который будет продавать сертификат SAN с набором поддоменов с подстановочными знаками. Я бы предоставил список центров сертификации, которые я запрашивал, но подозреваю, что здесь это неуместно.

[Обновление]

Самоподписанные сертификаты

Я неправильно понял смысл вопроса. Я считаю, что нужен был пример openssl.cnf. Вот один пример. Вам нужно будет заменить записи DNS на имена поддоменов с подстановочными знаками. На сайте security.stackexchange.com также есть несколько сообщений об этой настройке. Я не тестировал это, так как мои потребности были связаны с общедоступными URL-адресами, и CA не разрешили бы это как вариант.

3
ответ дан 3 December 2019 в 01:37

Теги

Похожие вопросы