Как добавить dns имя в сертификате
- Редактирование дефолтной конфигурации OpenSSL
Итак, предположим, у нас есть пустой RHEL/CentOS 5/6/7 без ничего в минимальной конфигурации. Начнём с установки или обновления пакета openssl, если ещё не:
Далее нам надо изменить файл /etc/pki/tls/openssl.cnf с дефолтной кофигурацией OpenSSL. Если изменять этот файл, все настройки останутся и будут применены для дальнейших операций с OpenSSL. Поэтому мы будем изменять копию этого файла и использовать её для создания нашего сертификата:
Отредактируем наш временный кофигурационный файл OpenSSL и активируем опцию альтернативных доменных имён в секции [ req ]. Это секция, которая говорит OpenSSL как создавать запросы на подпись сертификата (Certificate Signing Request, CSR). В этой секции должна быть строка начинающаяся с req_extensions, изменим её так:
Эта настройка говорит OpenSSL добавить секцию v3_req в запрос на подпись сертификата (CSR). Теперь редактируем секцию [ req_distinguished_name ], разумеется, вы должный указать свои значения countryName, stateOrProvinceName и так далее в этой секции:
Далее редактируем секцию [ v3_req ] и добавим секцию [ alt_names ], чтобы они выглядели так, как показано ниже:
Заметьте, что всё, что мы написали в секции [ alt_names ] теперь появится во всех запросах на подпись сертификата (CSR-ах) созданных с помощью этого конфигурационного файла OpenSSL, если нужно будет создать запрос на подпись (CSR) с другими именами, нужно будет отредактировать этот файл и поменять строки DNS.x и IP.x.
Проверим, что созданный запрос на подпись сертификата (CSR) содержит то, что нам нужно:
Некоторые сервисы (например, веб-сервер IIS) требуют секретный ключ и сертификат в одном файле в формате PKCS12. Хотя здесь не будет описана настройка таких сервисов, но экспортировать секретный ключ и сертификат с пустым паролем в файл PKCS12 можно так:
Итак, после всех операций у нас есть следующие файлы:
Также, если вам не нужен сертификат с несколькими доменными именами, а только с одним, всё это можно упростить запуская интерактивный скрипт genkey из пакета crypto-utils (ещё требует пакет mod_ssl):
- Конфигурация SSL и использование созданного SSL сертификата в Apache
По этой теме (Apache и SSL) в этих ваших интернетах материалов чуть менее миллиона разной степени детализации, поэтому тут вкратце. Сначала установим собственно Apache и SSL модуль для него:
Теперь запускаем Apache с помощью вашей системы инициализации:
В этой статье описывается, как добавить альтернативное имя субъекта (SAN) в безопасный сертификат протокола доступа к легкому каталогу (LDAP).
Применяется к: Windows Server 2012 R2
Исходный номер КБ: 931351
Сводка
Сертификат LDAP подан в орган сертификации (CA), настроенный на компьютере Windows Server 2003. San позволяет подключаться к контроллеру домена с помощью имени системы доменных имен (DNS), кроме имени компьютера. В этой статье содержатся сведения о добавлении атрибутов SAN в запрос сертификации, отправленный в корпоративный ЦС, автономный ЦС или сторонний ЦС.
В этой статье также обсуждаются следующие действия:
- Настройте ЦС, чтобы принять атрибут SAN из запроса сертификата.
- Создание и отправка запроса сертификата в корпоративный ЦС.
- Создание и отправка запроса сертификата в автономный ЦС.
- Создайте запрос сертификата с помощью Certreq.exe средства.
- Создание и отправка запроса сертификата в сторонний ЦС.
Создание и отправка запроса сертификата
При отправке запроса сертификата в корпоративный ЦС шаблон сертификата должен быть настроен на использование SAN в запросе, а не на использование сведений из службы каталогов Active Directory. Шаблон Веб-сервера версии 1 можно использовать для запроса сертификата, который будет поддерживать LDAP над слоем безопасных розеток (SSL). Шаблоны версии 2 можно настроить для получения SAN либо из запроса сертификата, либо из Active Directory. Чтобы выдавать сертификаты, основанные на шаблонах версии 2, корпоративный ЦС должен работать на компьютере с Windows Server 2003 выпуск Enterprise.
При отправке запроса в автономный ЦС шаблоны сертификатов не используются. Поэтому САН всегда должен быть включен в запрос сертификата. Атрибуты SAN можно добавить в запрос, созданный с помощью Certreq.exe программы. Или атрибуты SAN могут быть включены в запросы, отправленные с помощью веб-страниц регистрации.
Используйте страницы веб-регистрации для отправки запроса сертификата в корпоративный ЦС
Откройте Internet Explorer.
Местообладатель представляет имя веб-сервера, который работает Windows Server 2003 и имеет ЦС, к нему необходимо <servername> получить доступ.
Щелкните расширенный запрос сертификата.
В списке шаблонов сертификатов щелкните Веб-сервер.
ЦС должен быть настроен для выпуска сертификатов веб-сервера. Возможно, вам придется добавить шаблон веб-сервера в папку Шаблоны сертификатов в оснастке сертификационного органа, если ЦС еще не настроен на выпуск сертификатов веб-сервера.
Предоставление необходимых сведений.
В поле Имя введите полное доменное имя контроллера домена.
В статье Ключевые параметры установите следующие параметры:
- Создание нового набора ключей
- CSP: Microsoft RSA SChannel Cryptographic Provider
- Использование ключей: Exchange
- Размер ключа: 1024 — 16384
- Имя контейнера автоматического ключа
- Сертификат магазина в локальном хранилище сертификатов компьютера
В статье Расширенные параметры установите формат запроса cmC.
В поле Атрибуты введите нужные атрибуты SAN. Атрибуты SAN принимают следующую форму:
Если вы видите веб-страницу сертификата, нажмите кнопку Установите этот сертификат.
Используйте страницы веб-регистрации для отправки запроса сертификата в автономный ЦС
Откройте Internet Explorer.
Местообладатель представляет имя веб-сервера, который работает Windows Server 2012 R2 и имеет ЦС, к нему <servername> необходимо получить доступ.
Щелкните расширенный запрос сертификата.
Предоставление необходимых сведений.
В поле Имя введите полное доменное имя контроллера домена.
В списке Type of Certificate Needed Server щелкните Сертификат проверки подлинности сервера.
В статье Ключевые параметры установите следующие параметры:
- Создание нового набора ключей
- CSP: Microsoft RSA SChannel Cryptographic Provider
- Использование ключей: Exchange
- Размер ключа: 1024 — 16384
- Имя контейнера автоматического ключа
- Сертификат магазина в локальном хранилище сертификатов компьютера
В статье Расширенные параметры установите формат запроса как CMC.
В поле Атрибуты введите нужные атрибуты SAN. Атрибуты SAN принимают следующую форму:
Если ЦС не настроен на автоматический выпуск сертификатов, отображается веб-страницу Certificate Pending и запрашивается, чтобы администратор выдал запрашиваемый сертификат.
Используйте Certreq.exe для создания и отправки запроса сертификата, который включает SAN
Чтобы использовать Certreq.exe для создания и отправки запроса сертификата, выполните следующие действия:
Создайте файл .inf, который указывает параметры запроса сертификата. Чтобы создать файл .inf, можно использовать пример кода в разделе Создание файла RequestPolicy.inf в разделе Как запросить сертификат с настраиваемой альтернативной именем субъекта.
SANs можно включить в раздел [Расширения]. Примеры см. в примере файла .inf.
Сохраните файл в качестве Request.inf.
Откройте окно командной строки.
В командной строке введите следующую команду, а затем нажмите клавишу ВВОД:
Эта команда использует сведения в файле Request.inf для создания запроса в формате, указанном значением RequestType в файле .inf. После создания запроса пара общедоступных и частных ключей автоматически создается, а затем ставится в объект запроса в хранилище запросов регистрации на локальном компьютере.
В командной строке введите следующую команду, а затем нажмите клавишу ВВОД:
Переключатель -config использует следующий формат для ссылки на определенный ЦС:
computername\Certification Authority Name
Если этот ЦС является корпоративным ЦС и если пользователь, который передает запрос сертификата, имеет разрешения на чтение и регистрацию для шаблона, запрос передается. Выданный сертификат сохранен в файле Certnew.cer. Если ЦС является автономным ЦС, запрос сертификата будет в состоянии ожидания до тех пор, пока он не будет утвержден администратором ЦС. Вывод из команды certreq-submit содержит номер ID запроса отправленного запроса. После утверждения сертификата его можно получить с помощью номера запроса.
Чтобы получить сертификат, используйте номер запроса, выдав следующую команду:
Вы также можете использовать -config переключатель здесь, чтобы получить запрос сертификата из определенного ЦС. Если переключатель не используется, вам будет предложено выбрать -config ЦС, из которого можно получить сертификат.
В командной строке введите следующую команду, а затем нажмите клавишу ВВОД:
После получения сертификата необходимо установить его. Эта команда импортирует сертификат в соответствующий магазин, а затем связывает сертификат с закрытым ключом, созданным на шаге 4.
Отправка запроса сертификата в сторонний ЦС
Большинство поставщиков ссылаются на запрос сертификата как на запрос подписи сертификатов (CSR).
Ссылки
Дополнительные сведения о том, как включить LDAP над SSL вместе с сторонним органом сертификации, см. в этой ссылке Как включить LDAP над SSLс помощью сторонних органов сертификации.
Дополнительные сведения о том, как запросить сертификат с настраиваемой альтернативной именем субъекта, см. в справке "Как запросить сертификат с настраиваемой альтернативной именем субъекта".
Дополнительные сведения о том, как использовать задачи сертификации для управления сертификационным органом (CA), перейдите на следующий веб-сайт Microsoft Developer Network msDN: Certutil tasks for managing a Certification Authority (CA)
Набор технологий, который мы по привычке именуем сертификатами SSL, представляет из себя здоровенный айсберг, на вершине которого зеленый замочек слева от доменного имени в адресной строке вашего браузера. Правильное название X.509 сертификат , который восходит к X.500 стандарту ITU-T DAP (Directory Access Protocol) . DAP не взлетел, в IETF его посчитали неудобным для использования со всеми этими OSI нагромождениями и вместо него придумали LDAP, Lightweight DAP где первая буква обозначает «легковесный». Те, кому пришлось настраивать, или что хуже производить его отладку могут оценить иронию в полной мере. Никогда еще первая буква аббревиатуры так не лгала, не считая SNMP.
Кстати что общего между LDAP, SNMP и X.509 ну кроме того, что им еще не скоро предстоит собрать стадионы фанатов? Их объединяет ASN.1 — мета-язык описания объектов древности. Если бы эти технологии создавали сейчас, в ход бы пошли XML, DTD или какой-нибудь другой ML. Но в то время стандарты создавались титанами, для которых даже SNMP был простым делом.
Словарный запас
Определение X.509 сертификатов есть в архиве ITU-T
Для того, чтобы досконально понять обозначения и синтаксис, придется читать спеки X.680 редакции 2008 г., где есть полное описание ASN.1. В понятиях ASN.1 SEQUENCE обозначает примерно то же самое, что и struct в Си. Это может сбить с толку, ведь по семантике оно должно было соответствовать скорее массиву. И тем не менее.
Стандарт X.690 определяет следующие правила кодирования структур данных, созданных в соответствии с ASN.1: BER (Basic Encoding Rules), CER (Canonical Encoding Rules), DER (Distinguished Encoding Rules). Есть даже XER (XML Encoding Rules), который на практике мне никогда не встречался.
Да, но для чего нужны сертификаты X.509, которые доставляют столько головной боли? Первая и основная функция сертификатов X.509 — служить хранилищем открытого или публичного ключа PKI (public key infrastructure). К этой функции нареканий нет, а вот со второй не все так однозначно.
Вторая функция сертификатов X.509 заключается в том, чтобы предъявитель сего был принят человеком, либо программой в качестве истинного владельца некоего цифрового актива: доменного имени, веб сайта и пр. Это получается по-разному, далеко не все сертификаты имеют высокую ликвидность, если пользоваться финансовой терминологией. Полгода назад Гугл пригрозил компании Симантек, что перестанет доверять их сертификатам из-за того, что те выпустили аж 30,000 неисправных сертификатов.
Номенклатура сертификатов
Давайте рассмотрим, какие сертификаты X.509 встречаются в природе, если рассматривать их по расположению в пищевой цепочке доверия.
- Корневые сертификаты — изготовлены в корневом УЦ (удостоверяющий центр) и имеют следующие признаки: атрибуты issue и subject идентичны, а в расширении basicConstraints атрибут cA принимает значение TRUE .
- Промежуточные сертификаты — расплывчатый термин, обозначающий сертификаты не подписанные корневым УЦ, которые могут формировать цепочку произвольной длины, начиная от корневого сертификата и заканчивая сертификатом конечного субъекта.
- Сертификаты конечного субъекта — конечные сертификаты в цепочке, которые не могут подписывать другие промежуточные сертификаты своим закрытым ключом.
По степени крутизны дороговизны и надежности сертификаты делятся на 3 вида: DV, OV и EV.
- Аудит правовой, физической и операционной деятельности организации.
- Следует убедиться в том, что организация имеет эксклюзивное право на использование доменного имени.
- Следует убедиться в том, что организация авторизована для выпуска сертификата данного типа.
Более подробно можно прочитать в Хабрапоспе компании TutHost. Также атрибут subject X.509 EV сертификата содержит значения jurisdictionOfIncorporationCountryName , businessCategory , и serialNumber .
По свои свойствам сертификаты бывают следующих типов.
В России понятие КС квалифицированного сертификата определено законодательно в связи с доступом к ГосУслугам. По ссыске Хабрапост с былиной об извлечении персональных данных из КС.
Откуда берутся сертификаты?
Еще совсем недавно было всего 2 способа заполучить X.509 сертификат, но времена меняются и с недавнего времени есть и третий путь.
-
Создать свой собственный сертификат и самому же его подписать. Плюсы — это бесплатно, минусы — сертификат будет принят лишь вами и, в лучшем случае, вашей организацией.
Для первого сценария достаточно пары команд и чтобы 2 раза не вставать создадим сертификат с алгоритмом эллиптических кривых. Первым шагом нужно создать закрытый ключ. Считается, что шифрование с алгоритмом эллиптических кривых дает больший выхлоп, если измерять в тактах CPU, либо байтах длины ключа. Поддержка ECC не определена однозначно в TLS < 1.2.
Далее, создает CSR — запрос на подписание сертификата.
Результат можно посмотреть командой:
Openssl имеет огромное количество опций и команд. Man страница не очень полезна, справочник удобнее использовать так:
Ровно то же самое можно сделать с помощью java утилиты keytool .
Следует серия вопросов, чтобы было чем запомнить поля owner и issuer
Конвертируем связку ключей из проприетарного формата в PKCS12.
Смотрим на результат:
keytool -list -v -alias selfsigned -storepass password -keystore keystore.jksЗначению ObjectId: 2.5.29.14 соответствует определение ASN.1, согласно RFC 3280 оно всегда non-critical . Точно так же можно узнать смысл и возможные значения других ObjectId , которые присутствуют в сертификате X.509.
LetsEncrypt
Можно бесплатно получить X.509 сертификат LetsEncrypt и для этого не нужно даже заходить на вебсайт, достаточно установить certbot .
Сценарий №1 — найти следующего в связке
Связка сертификатов — Объединение нескольких X.509 сертификатов в один файл, чаще всего в формате PEM . Связка передается по сети в момент протокола рукопожатия SSL/TLS.
Самый сок начинается, когда имеете дело со связкой сертификатов, a. k. a certificate chain . Часто просматривая лапшу в связке ключей jks непросто понять как найти родительский сертификат, когда там россыпь новых и старых сертификатов на несколько доменных имен.
Так и есть, SKI сертификат DigiCert имеет то же значение.
Для корневого сертификата AKI = SKI , а также isCa=true
Сценарий №2 — используй subjectAltnName, Люк
Если администратору в силу перфекционизма нужны помимо езды нужны еще и шашечки — вожделенный зеленый замочек, то нужно переделать сертификат X.509, определив в нем subjectAltName .
Многодоменные сертификаты DigiCert могут перевыпускаться неограниченное число раз. То есть при необходимости вы можете добавлять альтернативные имена субъектов (SANS) в свой сертификат.
Добавление альтернативных имен субъектов SAN к вашему многодоменному сертификату SSL/TLS может привести к дополнительным расходам.
Вы также можете изменять общее имя, порядок альтернативных имен субъектов SANS, удалять SANS, изменять SANS и добавлять SANS.
Удаление и изменение доменов в многодоменном сертификате SSL/TLS приведет к отзыву оригинального сертификата и любого из его дублирующих сертификатов. См. Перевыпуск сертификата SSL/TLS.
Добавление альтернативных имен субъектов (SANS) к своему многодоменному сертификатуДля добавления альтернативных имен субъектов (SANS) к своему многодоменному сертификату SSL/TLS вам необходимо перевыпустить свой сертификат. Чтобы перевыпустить сертификат SSL/TLS, вам необходимо сгенерировать новый запрос на подпись сертификата (CSR). Для ознакомления с более подробной информацией о создании запроса на подпись сертификата (CSR) см. страницу Создать запрос на подпись сертификата (CSR).
В левой части главного меню своей учётная запись CertCentral нажмите Сертификаты > Заказы.
На странице «Заказы» найдите номер заказа для многодоменного сертификата EV или многодоменного сертификата SSL/TLS, который вы хотите добавить к альтернативным именам субъектов (SANS).
На странице «Данные заказа» в раскрывающемся списке Действия с сертификатом выберите Перевыпуск заказа.
На странице заказа на перевыпуск сертификата заполните форму:
- Добавьте свой CSR
- Добавьте SANS
- Выберите метод оплаты, хэш подписи и серверную платформу
- Добавьте причину перевыпуска.
С вас будет взята оплата только в том случае, если добавление альтернативных имен субъектов (SANS) приведет к дополнительным расходам.
После выполнения данного действия нажмите Запрос на перевыпуск.
Шаг 4: Завершение процедуры подтверждения полномочий управления доменом (DCV)Если вы добавили какие-либо новые неподтвержденные домены в запрос на повторный выпуск сертификата (общее имя или SAN), вам необходимо продемонстрировать контроль над этими доменами, прежде чем DigiCert сможет повторно выпустить сертификат. См. Продемонстрировать управления доменами в находящемся на рассмотрении заказе сертификата.
Шаг 5: DigiCert перевыпускает многодоменный сертификат SSL/TLS Шаг 6: Установите свой повторно выпущенный сертификат SSL/TLSУстановите и настройте новый сертификат. Для ознакомления с более подробной информацией об установке своего сертификата см. странице Инструкции и обучающие руководства по установке SSL-сертификатов.
О проекте
©2020 DigiCert, Inc. All rights reserved. DigiCert, its logo and CertCentral are registered trademarks of DigiCert, Inc. Norton and the Checkmark Logo are trademarks of NortonLifeLock Inc. used under license. Other names may be trademarks of their respective owners.
Этот сайт используйте файлы «cookie» и другие технологии отслеживания для облегчения навигации и предоставления вам возможности оставлять отзывы, для анализа использования вами наших продуктов и сервисов, помощи в наших действиях по продвижению и рекламированию и предоставления содержания третьих сторон. Прочитайте нашу Политика в отношении файлов «cookie» и Политику конфиденциальности для получения более подробной информации.
Читайте также: