Cоздайте и выпустите SSL/TLS-сертификаты для настройки защищенного соединения с сервисами Рутокен KeyBox:
- сертификат серверной аутентификации для веб-сервера и сервера OpenID Connect;
- сертификат клиентской аутентификации для дополнительных сервисов Rutoken KeyBox Event Log Proxy и Indeed AirCard Enterprise.
В разделе описывается настройка шаблонов и выпуск сертификатов в Microsoft CA.
Инструкции для других поддерживаемых УЦ
Требования к сертификату
Серверный сертификат
- Субъект (Subject) сертификата должен содержать FQDN сервера Rutoken KeyBox;
- Дополнительное имя субъекта (Subject Alternative Name) сертификата должно содержать атрибут DNS-имя (DNS Name) (FQDN сервера Rutoken KeyBox), например, server.demo.loc, или соответствующую запись с подстановочными знаками, например *.demo.loc (Wildcard certificate);
- Улучшенный ключ (Enhanced Key Usage) сертификата серверной аутентификации должен содержать значение «Проверка подлинности сервера» (Server Authentication).
Клиентский сертификат
- Субъект (Subject) сертификата содержит FQDN сервера Rutoken KeyBox;
- Улучшенный ключ (Enhanced Key Usage) сертификата содержит значение «Проверка подлинности клиента» (Client Authentication).
Создание шаблона сертификата
Подготовьте шаблон сертификата. В инструкции описана настройка шаблона сертификата в УЦ Microsoft CA.
- В оснастке управления УЦ certsrv правой кнопкой мыши нажмите на Шаблоны сертификатов (Certificate Templates) и выберите Управление (Manage).
- Скопируйте предустановленный шаблон Веб-сервер (Web Server): правой кнопкой мыши нажмите на название шаблона и выберите Скопировать шаблон (Duplicate Template). Откроется окно свойств нового шаблона.
- для серверного сертификата: Веб-сервер (Web Server);
- для клиентского сертификата: Проверка подлинности рабочей станции (Workstation Authentication).
- На вкладке Общие (General) укажите имя шаблона сертификата. При необходимости укажите период действия сертификата и период обновления.
- На вкладке Обработка запроса (Request Handling) включите опцию Разрешить экспортировать закрытый ключ (Allow private key to be exported).
- На вкладке Шифрование (Cryptography) измените минимальный размер ключа при необходимости.
- На вкладке Безопасность (Security) укажите имя сервера для запроса сертификата:
- Нажмите Добавить (Add)→Типы объектов (Object Types), включите опцию Компьютеры (Computers) и нажмите ОК.
- Введите имя сервера, где расположен Рутокен KeyBox, и нажмите ОК.
- В списке разрешений напротив опции Заявка (Enroll) включите Разрешить (Allow), чтобы разрешить запрос сертификата.
- Нажмите Применить (Apply) и ОК.
- Опубликуйте созданный шаблон сертификата:
- Перейдите в оснастку управления УЦ certsrv.
- Правой кнопкой мыши нажмите на Шаблоны сертификатов (Certificate Templates) и выберите Создать (New)→Выдаваемый шаблон сертификата (Certificate Template to Issue).
- В окне Включение шаблонов сертификатов (Enable Certificate Templates) выберите созданный шаблон. Шаблон опубликуется в УЦ.
- Закройте certsrv.
Выпуск сертификата
Выпустите TLS-сертификат на имя рабочей станции, где будет установлен веб-сервер. Сертификат можно выпустить:
- в УЦ;
- с помощью самоподписанного сертификата.
УЦ
В инструкции описан процесс выпуска сертификата в УЦ Microsoft CA.
- Откройте оснастку certs и перейдите в раздел хранилища локального компьютера Сертификаты (локальный компьютер) (Certificates (loc Computer)).
- Правой кнопкой мыши нажмите Личное (Personal).
- Выберите Все задачи (All Tasks)→Запросить новый сертификат (Request New Certificate).
- В окне Регистрация сертификатов (Certificate Enrollment) два раза нажмите Далее (Next) и активируйте чекбокс с названием шаблона сертификата.
- Нажмите на ссылку Требуется больше данных для подачи заявки на этот сертификат. Щелкните здесь для настройки параметров (More information is required to enroll for this certificate. Click here to configure settings), чтобы указать дополнительную информацию для запроса сертификата. Откроется окно свойств сертификата.
- На вкладке Субъект (Subject):
- В поле Имя субъекта (Subject name) в выпадающем списке Тип (Type) выберите Общее имя (Common name).
- Введите FQDN сервера Rutoken KeyBox и нажмите Добавить (Add).
- В поле Дополнительное имя (Alternative name) в выпадающем списке Тип (Type) выберите DNS.
- Введите FQDN сервера Rutoken KeyBox и нажмите Добавить (Add).
- При необходимости создайте маску имени домена для Wildcard сертификатов, которые предъявляют серверы с различными именами. В поле Дополнительное имя (Alternative name) в выпадающем списке Тип (Type) выберите DNS и введите имя домена, например, *.demo.loc. Нажмите Добавить (Add).
- Нажмите OK.
- Перейдите на вкладку Закрытый ключ (Private Key)→Параметры ключа (Key Options) и убедитесь, что опция Сделать закрытый ключ экспортируемым (Make private key exportable) включена. Нажмите OK.
- Нажмите Заявка (Enroll).
Убедитесь, что сертификат выпущен и установлен в хранилище локального компьютера (Сертификаты (Certificates) → Личное (Personal) → Сертификаты (Certificates)).
Самоподписанный сертификат
Самоподписанный корневой сертификат создается с помощью утилиты openssl.
Создайте закрытый ключ, а затем корневой сертификат с использованием сгенерированного ключа:
openssl genrsa -out ca.key 2048 openssl req -x509 -new -nodes -key ca.key -out ca.crt -days 3650 -subj "/CN=selfCA"
Создайте файл конфигурации SSL.conf, который содержит настройки для генерации запроса на сертификат веб-сервера. Вместо
<FQDN сервера Rutoken KeyBox>подставьте DNS-имя рабочей станции, где будет установлен веб-сервер.nano SSL.conf
В параметрах
commonNameиDNS.1укажите DNS-имя рабочей станции, где вы планируете установить веб-сервер (для выпуска серверного сертификата) или сервер Rutoken KeyBox (для выпуска клиентского сертификата).Создайте запрос на сертификат и выпустите сертификат с помощью самоподписанного сертификата.
openssl genrsa -out SSL.key 2048 openssl req -new -sha256 -out SSL.csr -key SSL.key -config SSL.conf openssl x509 -req -days 365 -in SSL.csr -CA ca.crt -CAkey ca.key -CAcreateserial -extfile SSL.conf -extensions req_ext -out SSL.crt
Убедитесь, что сертификат выпущен и установлен в хранилище локального компьютера (Сертификаты (Certificates) → Личное (Personal) → Сертификаты (Certificates)).