Iis криптопро csp

Iis криптопро csp Электронная цифровая подпись

Всем привет, с вами Искандер Рустамов, младший системный администратор Cloud4Y. Сегодня мы будем покорять развертывание центра сертификации (ЦС).

Из-за сложной геополитической обстановки резко усилился процесс импортозамещения, появилась необходимость в выстраивании инфраструктуры на базе государственных требований к решениям в области информационной безопасности. Одним из таких решений является организация доступа клиентов к веб-ресурсам через портал nGate по защищённому TLS соединению с использованием шифрования по ГОСТ криптопровайдера «КриптоПро». Для этого необходим собственный центр сертификации.

В данной статье мы рассмотрим установку Standalone Center Authority на базе Windows Server 2019. Если вам будет интересно, могу описать процесс привязки нашего центра сертификации к порталу nGate (спойлер: на самом деле там нет ничего сложного).

Вводные данные

КриптоПро NGate — это универсальное высокопроизводительное средство криптографической защиты сетевого трафика, объединяющее в себе функционал:

  • TLS-сервера доступа к веб-сайтам;
  • Сервера портального доступа;

NGate обладает широкими возможностями по управлению доступом удалённых пользователей как с обеспечением строгой многофакторной аутентификации, так и прозрачно, обеспечивая при этом гибкое разграничение прав доступа к ресурсам. КриптоПро NGate реализует российские криптографические алгоритмы, сертифицирован по требованиям к СКЗИ, имеет сертификаты ФСБ России по классам КС1, КС2 и КС3 и может использоваться для криптографической защиты конфиденциальной информации, в том числе персональных данных, в соответствии с требованиями российского законодательства по информационной безопасности.

Кроме того, NGate:

  • Снижает нагрузку по обработке TLS-соединений с веб-серверов, позволяя им сосредоточиться на выполнении своих основных задач;
  • Исключает необходимость установки на каждом веб-сервере отдельного СКЗИ и проведения исследований по оценке влияния ПО веб-серверов на СКЗИ.

В состав ПАК «КриптоПро TSP» входят следующие компоненты:

  • КриптоПро TSP Server
  • КриптоПро TSP Client

КриптоПро TSP Server

  • Использует встроенный веб-сервер Microsoft Internet Information Services (IIS), поддерживающий различные методы аутентификации и протокол TLS (SSL);
  • Поддерживает развёртывание нескольких экземпляров службы на одном компьютере;
  • Позволяет настраивать несколько политик штампов в каждом экземпляре для разных сфер применения;
  • Реализует разграничение доступа по списку контроля доступа, что позволяет задать ролевое разграничение доступа. Возможна посменная работа нескольких операторов службы, каждый из которых обладает своим ключом подписи штампов;
  • Поддерживает одновременное использование нескольких криптопровайдеров (CSP) на разных экземплярах службы. Например, один экземпляр может работать с использованием СКЗИ “КриптоПро CSP”, другой – с использованием криптопровайдера “Microsoft Base CSP”;
  • Обеспечивает заданную точность времени с использованием специализированной аппаратуры (часов точного времени);
  • Устанавливается с помощью Windows Installer.

КриптоПро TSP Client

“КриптоПро TSP Client” представляет собой программную библиотеку, предоставляющую программный интерфейс встраивания этой библиотеки в конкретные прикладные системы для работы с штампами времени. “КриптоПро TSP Client” не имеет выделенного дистрибутива, его установка должна производиться совместно с установкой продукта, который использует его программный интерфейс. Модули для интеграции “КриптоПро TSP Client” в установочный пакет другого продукта включены в инструментарий разработчика “КриптоПро PKI SDK” вместе с соответствующим руководством разработчика.

В состав ПАК “КриптоПро TSP” входит приложение КриптоПро TSPUTIL, предназначенное для работы со штампами времени в командной строке. Данное приложение позволяет создавать запросы на штампы времени, получать штампы времени, сохранять запросы и штампы в файлы, обрабатывать их. КриптоПро TSPUTIL для выполнения своих функций использует “КриптоПро TSP Client”, и содержит эту программную библиотеку в своём установочном пакете.

Операционная платформа компонент ПАК “КриптоПро TSP”

“КриптоПро TSP Server” функционирует под управлением операционных систем семейств Windows Server 2003 (x86 или x64), системах Windows Server 2008 (x86 или x64), Windows Server 2008 R2;

Форум КриптоПро
 » 
Общие вопросы
 » 
Общие вопросы
 » 
TLS с одновременным использованием ГОСТ и RSA в IIS (в новостях)

lab2
Оставлено
:
4 марта 2019 г. 22:37:36(UTC)

Ok, ясно, попробуем. Спасибо!

lab2
Оставлено
:
20 марта 2019 г. 10:37:06(UTC)

все забываю отчитаться – технология работает, если все сделать аккуратно )Интересно, конечно, в общих чертах, узнать как это устроено изнутриВ частности, интересно как (на основании чего) передается сертификат (список сертификатов ?) сервера клиенту

Максим Коллегин
Оставлено
:
20 марта 2019 г. 19:00:41(UTC)

Если в двух словах: клиент присылает список ciphersuite в Client Hello. Если среди них есть ГОСТ – используется ГОСТ-сертификат. Иначе RSA

 1 пользователь поблагодарил Максим Коллегин за этот пост. lab2 оставлено 22. 2019(UTC)

Служба проверки сертификатов и электронной подписи КриптоПро SVS имеет следующие
ключевые особенности:

  • Реализует проверку сертификатов и электронной подписи с учётом использования российских криптографических алгоритмов.
  • Использует встроенный веб-сервер Microsoft IIS, поддерживающий различные методы аутентификации и протокол TLS (SSL).
  • Поддерживает развёртывание нескольких экземпляров службы на одном компьютере.
  • Может получать информацию о статусах сертификатов из следующих источников:
  • Локально установленные списки отзыва сертификатов (CRL);
  • CRL, доступные по сети;
  • Сервисы OCSP.
  • Процесс проверки статусов сертификатов реализуется средствами ОС Windows и средствами КриптоПро PKI SDK (см. документ ЖТЯИ.00094-01 90 10. «Службы УЦ. КриптоПро PKI SDK. Руководство разработчика»).
  • Устанавливается с помощью Windows Installer.

Поддерживаемые форматы электронной подписи

КриптоПро SVS поддерживает следующие форматы электронной подписи:

  • Подпись формата CMS (PKCS#7/CAdES-BES)Присоединенная подпись;Отделенная подпись;
  • Присоединенная подпись;
  • Отделенная подпись;
  • Усовершенствованная подпись (CAdES-T, CAdES-X Long Type 1);Присоединенная подпись;Отделенная подпись;
  • Подпись XML-документов (XML Digital Signature, XMLDSig);
  • Необработанная (чистая) электронная подпись ГОСТ Р 34.10-2012 (и ГОСТ Р 34.10–2001);
  • Подпись документов PDF (CAdES-BES, CAdES-T, CAdES-X Long Type 1);
  • Подпись документов Microsoft Office (Word и Excel).

ПримечаниеБолее детальная информация о поддерживаемых форматах подписи и ссылки на нормативную
документацию содержатся в разделе 11
документа “ЖТЯИ. 00096-02 96 02 КриптоПро DSS. Общее описание”.

Возможности КриптоПро SVS

На сервере, обеспечивающем работу КриптоПро SVS, устанавливаются следующие компоненты:

  • Веб-интерфейс Пользователя,
  • REST-сервис проверки подписи.

Настройка конфигурации и администрирование сервиса производится с помощью Windows
PowerShell.

КриптоПро SVS использует встроенный в ОС механизм проверки цепочки сертификатов,
используя собственное хранилище корневых сертификатов УЦ. Это означает, что необходимые
для построения цепочки сертификаты, CRL или OCSP-ответы берутся из системных хранилищ или
скачиваются автоматически.

При проверке документов в веб-интерфейсе КриптоПро SVS в браузере может отображаться
содержимое документов. Поддерживаются следующие форматы документов:
PDF, DOC, DOT, DOCM, DOTM, DOCX, DOTX, XML, FlatOpc, FlatOpcMacroEnabled, FlatOpcTemplate,
FlatOpcTemplateMacroEnabled, ODT, OTT, OOXML, WordML, RTF, HTML, XHTML, MHTML и TXT.

Набор отображаемых документов может быть расширен путём написания плагинов
для нужных форматов.

В качестве криптопровайдера может быть использовано СКЗИ «КриптоПро CSP» версии 5. 0 R2
варианта исполнения 2-Base или 3-Base.

В качестве OCSP-сервера может использоваться КриптоПро OCSP Server или другая совместимая
служба OCSP, соответствующая требованиям RFC 6960. Проект
Рекомендаций по стандартизации, устаналивающий требования к службам OCSP, использующим
российские криптографические алгоритмы, находится в разработке и доступен в виде проекта.

Требования к клиентскому рабочему месту

Операции верификации сертификата ключа проверки электронной подписи и подтверждения
подлинности электронных подписей документов выполняются на стороне сервера, что не требует
установки на компьютер клиента специализированного программного обеспечения (например,
КриптоПро PDF, КриптоПро Office Signature, КриптоАРМ). Вся работа клиента с КриптоПро SVS
производится через веб-браузер.

Для обеспечения доверия к ответам сервиса КриптоПро SVS взаимодействие с ним может
производиться по протоколу TLS.

Ролевая модель

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

ПримечаниеРоли Администратора SVS, Системного администратора, Оператора резервного копирования
и Аудитора могут принадлежать как одному сотруднику, так и быть разделены между несколькими
лицами.

Краткая справка

Протокол TLS (Transport Layer Security) является одним из наиболее популярных протоколов, предназначенных для установления защищенного канала связи в сети Интернет. Он основан на спецификации протокола SSL (Secure Sockets Layer) версии 3. 0, но за время своего существования претерпел довольно много изменений. Самой актуальной версией протокола на текущий момент является недавно вышедшая версия TLS 1. 3, однако версия TLS 1. 2 все еще остается наиболее распространенной.

Ключевая задача, решаемая TLS, – организация между клиентом и сервером аутентифицированного защищенного канала, обеспечивающего целостность и конфиденциальность передаваемых данных. На каждом этапе работы протокола используются различные криптографические алгоритмы, которые задаются криптонабором – совокупностью алгоритмов, определенной в стандартизирующих документах и включающей, например, алгоритм выработки симметричного ключа, алгоритм шифрования и алгоритм выработки имитовставки. Используемый криптонабор согласуется сторонами в самом начале установления защищенного канала.

Что такое TLS с ГОСТ?

В процессе работы над задачей разработки протокола TLS с поддержкой российских криптонаборов при активном участии специалистов КриптоПро было создано два ключевых документа, регламентирующих порядок работы протоколов TLS 1. 2 и TLS 1. 3 с ГОСТ Р 34. 12-2015 (с использованием алгоритмов Магма и Кузнечик) – рекомендации по стандартизации Р 1323565. 020-2018 для TLS 1. 2 и рекомендации по стандартизации Р 1323565. 030-2020 для TLS 1. Документы определяют криптонаборы с российскими алгоритмами хэширования, шифрования и электронной подписи с учетом наиболее современных и безопасных практик использования криптоалгоритмов. Для регламентации работы протокола с использованием криптонаборов на базе ГОСТ 28147-89 ранее были разработаны методические рекомендации МР 26. 001-2013. Отметим, что сами российские режимы и криптонаборы стандартизованы в международных организациях ISO и IETF, пройдя экспертизу ведущих мировых специалистов.

Читайте также:  Как участвовать в торгах

Подробнее о TLS c ГОСТ и поддерживаемых КриптоПро CSP криптонаборах

Процесс стандартизации TLS с российскими криптонаборами также активно идет и в рамках международных организаций IETF и IANA. Так, организация IANA, управляющая идентификаторами и параметрами протоколов сети Интернет, в том числе благодаря усилиям специалистов нашей компании, впервые зарегистрировала в своем реестре российские криптонаборы и другие сопутствующие параметры для протокола TLS 1. 2, а затем и TLS 1. Это крайне важное событие, которое имеет непосредственное отношение к стабильности работы протокола TLS с ГОСТ, ведь без наличия международно признаваемых идентификаторов все предыдущие годы существовала опасность блокировки TLS с ГОСТ из-за захвата номеров сторонними криптонаборами, а внесение поддержки российских криптонаборов в свободное ПО было затруднено.

КриптоПро CSP и TLS с ГОСТ

Ниже приведен список поддерживаемых различными версиями нашего криптопровайдера КриптоПро CSP криптонаборов и соответствующих регламентирующих документов. Отдельно отметим, что с версии 5. 0 R3 планируется реализация поддержки криптонаборов в соответствии с рекомендациями Р 1323565. 030-2020 для обеспечения поддержки протокола TLS версии 1. 3 с использованием отечественной криптографии.

Версия TLS
Поддерживаемые криптонаборы
Версия CSP
Регламентирующие документы

1. 0
28147_CNT_IMIT (0xFF,0x85)
любая поддерживаемая
МР 26. 001-2013

1. 1
28147_CNT_IMIT (0xFF,0x85)
любая поддерживаемая
МР 26. 001-2013

1. 2
28147_CNT_IMIT (0xFF,0x85)
любая поддерживаемая
МР 26. 001-2013

28147_CNT_IMIT (0xC1,0x02)
5. 0 R2 и выше
Р 1323565. 020-2018draft-smyshlyaev-tls12-gost-suites

KUZNYECHIK_CTR_OMAC (0xC1,0x00)

MAGMA_CTR_OMAC (0xC1,0x01)

1. 3
KUZNYECHIK_MGM_L (0xC1,0x03)
Планируется с 5. 0 R3
Р 1323565. 030-2020draft-smyshlyaev-tls13-gost-suites

MAGMA_MGM_L (0xC1,0x04)

KUZNYECHIK_MGM_S (0xC1,0x05)

MAGMA_MGM_S (0xC1,0x06)

Криптонаборы с номерами (0xC1, 0x00) – (0xC1, 0x06) являются наборами, зарегистрированными в реестре организации IANA.

Настройка OCSP — сетевого ответчика (Online responder)

Так как у Standalone центра сертификации нет шаблонов, нам необходимо вручную сформировать запрос и выпуск сертификата для конфигурации отзыва (Array configuration) в «Управление сетевым ответчиком (Online responder management). Для это используйте следующую конфигурацию для формирования запроса

Создайте: ocsp. txt cо следующим внутренним содержанием:

Откройте командную строку cmd. Перейдите в директорию с текстовым файлом или в будущем просто укажите полный путь при формировании запроса.

Узнаем, на какой срок сейчас выпускаются сертификаты. Для этого воспользуемся командой – certutil –getreg caalidityperiodunits

Результат — на рис.

Рисунок 15. В текущей конфигурации сертификаты выпускаются на один год

Изменим длительность выпуска сертификата:

#Изменение выпуска сертификатов с текущего состояния на длительность в 5 лет
certutil -setreg caValidityPeriodUnits 5
#Перезапуск сервера
net stop certsvc
net start certsvc

Сформируем запрос и выпустим сертификат для сетевого автоответчика (рис 16

Во время конфигурирования запроса выбираем место хранения контейнера ключа и проходим процедуру ДСЧ.

Рисунок 16. Выпуск сертификата для сетевого автоответчика

Экспортируем сертификат из центра сертификации и устанавливаем его в личные сертификаты локального компьютера.

После запроса сертификата открываем оснастку: Certificates (Run – MMC – Add or remove Snap-ins – Certificate),

Выбираем сертификат, выданный для сетевого ответчика. Нажимаем правой клавишей и открываем «Все задачи (Управление закрытыми ключами (All Tasks – Manage Private keys)».

Это нужно сделать, так как служба OCSP работает от лица Network Service.

Рисунок 16. Настройка сертификата для  работы сетевого ответчика

Далее переходим в настройки самого сетевого ответчика. (рис. 17)

Нам необходимо добавить «Конфигурацию отзыва (Revocation Configuration) – «Добавить»

Предстоит небольшой процесс настройки конфигурации отзыва.

Введите имя конфигурации – «Далее».

Выбираем второй пункт: «Выбрать сертификат в локальном хранилище сертификатов (Select a certificate from the local certificate store)» – «Далее».

В следующем окне нажимаем «Обзор (Browse)» и выбираем корневой сертификат нашего ЦА – «Больше вариантов (More choices)». (рис. 17) – «Далее».

В следующем окне выбираем «Выбрать сертификат подписи вручную (Manually a signing sertificate)

Рисунок 17. Управление сетевым ответчиком. (online responder management)

Рисунок 18. Прикрепляем конфигурации корневой сертификат ЦА

Осталось прицепить к нашей конфигурации выпускаемый ранее сертификат и проверить некоторые моменты.

Переходим в «Конфигурацию массива(array configuration)», выбираем конфигурацию и нажимаем «Назначить сертификат подписи (Assign Signing Certificate)». В появившемся окне нужно просто нажать «ОК».

Теперь необходимо «Обновить конфигурацию массива». Для этого выбираем «Конфигурация массива (Array configuration) – «Обновить (Refresh)»

После всех этих действий главное окно оснастки ocsp должно выглядеть так, как на рисунке 19.

Рисунок 19. Итоговый результат о работе сетевого ответчика

В процессе самостоятельной настройки «сетевого ответчика» может возникнуть много вопросов, особенно если нет опыта работы с Standalone центром сертификации, в котором отсутствуют шаблоны, без которых можно обойтись, но пути становятся длиннее в исполнение. Кстати говоря, если после прикрепления сертификата вы не получили заветное Working, то проверьте следующее (рис. 20, 20. 1):

Рисунок 20. Переходим в редактирование свойств конфигурации отзыва

Рисунок 20. Проверяем что в разделе «Подписи» выбран ГОСТ алгоритм шифрования

Чтобы проверить работу центра сертификации и сетевого автоответчика, выпустите сертификат для конечного пользователя, установите его и экспортируйте в какую-нибудь директорию. А после воспользуйтесь утилитой: Certutil –url /patch/test. crt

Для подробного отчёта вы можете воспользоваться: certutil –verify –urlfetch /patch/test. crt

На этом краткое руководство по развертыванию собственного центра сертификации подошло к концу. Я постарался рассказать о большинстве трудностей и нюансов, с которыми можно столкнуться в процессе работы. Надеюсь, это руководство поможет вам.

Что ещё интересного есть в блоге Cloud4Y

Установка центра сертификации (Standalone CA Windows Server 2019)

Непосредственно перед самой установкой коротко объясню особенности Standalone CA:

  • Не интегрирован с Active Directory (а он нам и не нужен);
  • Публикация сертификатов происходит через запрос на WEB-сайте. Путем автоматического или ручного подтверждения администратором ЦС (ЕМНИП, ЦС предприятия было добавлена такая возможность, не проверял её работу);
  • Пользователь сам вводит идентификационную информацию во время запроса сертификата;
  • Не поддерживает шаблоны сертификатов (из-за этого всплывут некоторые моменты, которые раскрою в процессе развертывания).

Измените имя компьютера до установки роли, после это будет сделать невозможно. «Далее (Next)» (рис. 2):

Рисунок 2. Уведомления при установки роли.

Добавляем роль в «Диспетчере серверов» (Server Manager), «Далее (Next)» (рис. 3):

Рисунок 3. Интерфейс «Диспетчера устройств» (Server Manager)

«Установка ролей и компонентов (Add roles and features wizard)». Нажимаем «Далее (Next)» – «Далее (Next)»;

«Тип установки: Установка ролей и компонентов (Installation type: Role-based or features-based installation». «Далее (Next)»;

«Выбор сервера (Server selection)». В нашем случае среди предложенных будет один сервер и имя компьютера. «Далее (Next)» (рис. 4);

Рисунок 4. «Выбор сервера (Server selection)»

«Роли сервера (Server roles). Здесь необходимо отметить две роли: Служба сертификатов Active Directory (Certificate Services Active Directory), Веб-сервер IIS (Web-server IIS);

Во всплывающем окне перечня нажимаем «Добавить компонент (Add features)» – «Далее (Next)»;

«Компоненты (Features) оставляем как есть — «Далее (Next)» ;

«Служба ролей (Role Services)» ЦС, необходимо выбрать:

  • «Центр сертификации (Certification Authority)»,
  • «Служба регистрации в центре сертификации через Интернет (Certification Authority Enrollment)»;

Сетевой автоответчик (Online responder) добавим уже после развертывания ЦА, в противном случае могут возникнуть проблемы.

В «Служба ролей (Role Services)» веб-сервера оставляем всё предложенное автоматически — «Далее (Next)»;

«Подтверждение (Confirmation).

На этом этапе запустится процесс установки роли.

После установки роли центра сертификации необходимо его настроить(рис. Выбираем:

«Настроить службы сертификатов Active Directory (Configure Active Directory-Certificate Services)

Рисунок 5. Уведомление о необходимости настройки центра сертификации

Выбираем установленные службы ролей для настройки (Select role services to configure) ЦС: «Центр сертификации (Certification Authority)», «Служба регистрации в центре сертификации через Интернет (Certification Authority Enrollment)»;

При выборе центра сертификации появится окно выбора ключевого носителя – КриптоПРО CSP, в качестве носителя для создания контейнера cngWorkAround используем хранилище ключей реестра Windows – Реестр. (рис

Рисунок 6. Выбор ключевого носителя – КриптоПРО CSP

Указываем вариант установки ЦС (Specify the setup type of the CA): Автономный центр сертификации (Standalone CA). «Далее (Next)»;

Указываем тип ЦС (Specify the type of CA) – Корневой ЦС (Root CA). «Далее (Next)»;

Необходимо создать закрытый ключ ЦС, чтобы он мог создавать и выдавать их клиентам. Для этого выбираем «Создать новый закрытый ключ (Create a new private key)».

В качестве поставщика службы шифрования выбираем один из трёх предложенных (не забывайте, что 2001 год уже устарел) Crypto-Pro GOST R 34. 10-2012 Strong Cryptographic Service Provider с длиной 512 и открытого ключа 1024 бита. (рис

Читайте также:  Базис-Центр - Поддержка - ЭЦП Эксперт

Рисунок 7. Выбор криптопровайдера

Укажите имя центра сертификации и суффиксы различающего имени, данные суффиксы будут отображаться в составе сертификата в графе «Издатель (Issuer)».

СN = Certificate Name, O = Organization, L = Locale, S = Street, C = Country, E = E-mail; (рис

Указываем необходимый «срок годности (validaty period)» корневого сертификата (в нашем случае было выбрано 15 лет). «Далее (Next)»;

Указываем расположение баз данных сертификатов (certificate database location). «Далее (Next)»;

В окне «Подтверждения (Confirmation) сверяем введённую информацию – «Настроить (Configure)»

Появится окно выбора носителя для создания контейнера нашего ЦС.

Где хранятся сами контейнеры ключей:

Реестр: (в качестве хранилища ключей используется реестр Windows), путь хранения контейнеров ключей следующий:Ключи компьютера: HKEY_LOCAL_MACHINESOFTWAREWow6432NodeCryptoProSettingsKeys

Далее откроется окно генерации начальной последовательности с помощью биологического ДСЧ. Для генерации случайной последовательности перемещайте указатель мыши или нажимайте различные клавиши.

После введите пароль на доступ к закрытому ключу.

Далее появится окно результатов об успешной установке компонентов (рис

Рис. Результаты установки

Настройка веб-сервера IIS

Теперь необходимо выполнить некоторые настройки веб-сервера: прицепить сертификат (самоподписанный или выпущенный нашим же ЦА). Кстати, он уже работает. В качестве примера выпустим самоподписанный сертификат.

Откроем Диспетчер служб IIS (Manager IIS) — Сертификат сервера (Server Certificates) (рис. 9);

В открывшемся окне в панели «Действия (Actions)» выберем – «Создать самоподписанный сертификат (Create Self-Signed Certificate);

Выбираем тип «Личный (Personal) и указываем «Имя сертификата (Friendly Name)»

Рисунок 9. Диспетчер служб IIS (IIS Manager)

Также сертификат вы можете выпустить следующим образом:На этой же панели создайте запрос (Create certificate request) для выпуска сертификата через наш ЦА и дальнейшей его загрузки в IIS (Complete Certificate Request). Но это по желанию.

Пример запроса (request) для формирования запроса вручную

В целом с веб-сервером мы закончили, в default web site вы можете увидеть, что были автоматически созданы virtual directory и applications «CertSrv». При желании можно создать отдельную виртуальную директорию под CRL’ки.

Процесс настройки

Ранее я не сталкивался с центрами сертификациями. Поскольку ОС Windows Server мне ближе, решил развернуть ЦС с использованием Server Manager. Разворачивать контроллер домена не нужно, так как сертификаты будут выдаваться внешним пользователям. Соответственно, можно обойтись «автономным» центром сертификации, подробнее о нём расскажу позже.

Перед развертыванием центра сертификации необходимо:

  • Установить СКЗИ КриптоПро CSP 5.0.12330:
  • Установить КриптоПро ЭЦП Browser plug-in;

Инсталляцию производим через «Дополнительные опции»

  • Выбираем язык установки, уровень защиты КС1 (другие уровни защиты требуют дополнительных аппаратных средств защиты);
  • В разделе «Установка компонентов» проверяем, что добавлен «Криптопровайдер уровня ядра ОС»; (рис. 1)

Рисунок 1. Установка дополнительных компонентов «КриптоПро CSP»

Криптопровайдер уровня ядра ОС необходим для работы криптопровайдера в службах и ядре Windows.

В следующем окне оставляем пункты:

  • Зарегистрировать считыватель «Реестр» (позволит сохранять контейнеры ключей в реестр);
  • Усиленный контроль использования ключей;
  • Не разрешать интерактивные сервисы Windows;

Также «КриптоПро» предложит добавить сертификаты своих центров сертификации;

Устанавливаем, перезагружаемся.

Установка сетевого ответчика (Online responder)

А вот мы и вернулись к установке автоответчика.

Добавляем роль в «Диспетчере серверов» (Server Manager) – «Далее (Next)»

Установка ролей и компонентов (Add roles and features wizard)» – «Далее (Next)»;

«Роли сервера (Server roles), раскрываем роль: Служба сертификатов Active Directory (Certificate Services Active Directory); и устанавливаем галочку на «Сетевой ответчик» (Online Responder)

Завершаем работу с мастером ролей и компонентов, путём односмысленных нажатий «Далее (Next)».

В IIS была добавлена Applications: ocsp. Только не пугайтесь, что сама по себе директория пустая. Так и должно быть.

Нам осталось настроить центр сертификации и выпустить сертификат на OCSP.

Установка и настройка Удостоверяющего Центра на базе Windows Server

1)Изменим имя сервера (Computer name) — Панель управленияСистема и безопасность Система

и установим крипто провайдера CSPSetup-4. 9842. exe

Перезагружаем компьютер
После установки Microsoft CA изменить имя сервера нельзя. 2)Добавляем Роль сервис через оснастку Диспетчер серверов (Server Manager)

Iis криптопро csp

2)Роли сервера:Отмечаем Веб-сервер (IIS) , Службы сертификатов Active Ditectory (active directory certificate services)

3)Службы ролей: Отмечаем Служба регистрации в центре сертификации через Интернет (Online Certificate Authority Registration Service)

4)Подтверждение нажимаем кнопку Установить

3)Диспетчер серверов Настройка службы сертификатов Active directory

1)Службы ролей отметим: Центр сертификации , Служба регистрации в центре сертификации Интернет

Iis криптопро csp

2)Вариант установки — Автономный ЦС

3)Укажите тип ЦС — Корневой ЦС

4)Укажите тип закрытого ключа — Создать новый закрытый ключ

5)Шифрование для ЦС crypto-pro gost r 34. 10-2012 cryptographic service provider 512
Отметить Разрешить взаимодействие с администратором , если ЦС обращается к закрытому ключу

Iis криптопро csp

6)Закрытый ключ ,заполняем Имя ЦС

7)Срок действия — укажите период действия корневого сертификата , водить мышкой при запросе

8)Выберете устройствоместо хранение сертификата и задайте пароль

9)КриптоПро csp Установить новый пароль , запомнить пароль

0)Настройка установка Службы сертификации Active Diretory завершена

1)Диспетчер служб IIS — Сертификат сервера

2)Создать самозаверенн ый сертификат. указать имя — web

Iis криптопро csp

5)Настройка Центр сертификации crtsrv
CRL Distribution Points (CDP) Списки отзывов сертификатов
Authority Information Access (AIA) Сведения о центрах сертификации

Iis криптопро csp

Iis криптопро csp

Отметить Включить в CRL. Клиенты используют для поиска в размещениях Delta CRL , Включать в CDP-расширения выданных сертификатов

1)Настройка политики выдачи сертификатов — по умолчанию требуется подтверждение администратора

Iis криптопро csp

Запрос сертификатаРасширенный запрос сертификатаСоздать и выдать запрос к этому ЦС

Iis криптопро csp

Iis криптопро csp

Для возможности дальнейшего выбора криптопровайдера “КриптоПро CSP” в окне создания запроса на сертификат, выполните следующее:

в файле System32certsrvcertsgcl. inc измените значение константы Const  nMaxProvType с 25 на 99. В стандартном скрипте перечислено только 25 типов криптопровайдера.

https://www.youtube.com/channel/UCnu9HxldaUZZg_DzCKcK23w/ https://www.youtube.com/watch?v=_SOIUW22e-o

КриптоПро 4 ошибки в журнале событий Windows

Внедрить TLS c ГОСТ? Легко!

Наша компания предлагает широкий спектр продуктов для организации каналов, защищенных с помощью TLS с использованием отечественной криптографии. Ниже мы опишем существующие решения для различных задач:

Клиент-серверные решения

Предлагаем воспользоваться одним из двух подходов, позволяющих без дополнительной сертификации и разработки программного кода развернуть TLS-сервер, который будет одновременно работать как с российскими, так и с зарубежными криптонаборами:

  • Если вам необходимо настроить работу для конкретного серверного ПО (IIS, Apache, nginx), вы можете на компьютере с указанным серверным ПО установить КриптоПро CSP и, следуя соответствующим инструкциям по настройке, получить TLS-сервер, дополнительно поддерживающий алгоритмы ГОСТ.
  • Вы также можете воспользоваться решением КриптоПро NGate, представляющим собой самостоятельный TLS-шлюз (отдельная аппаратная или виртуальная платформа). Решение имеет большое количество преимуществ, одним из которых является удобство обеспечения классов защиты KC2-KC3: в отличие от предыдущего подхода, не требуется выполнение отдельных настроек, приобретение и конфигурирование электронных замков и прочих дополнительных мер защиты, все необходимое уже включено в аппаратные компоненты решения.

Ниже представлена сравнительная таблица характеристик каждого предлагаемого решения. В колонке “Cертификация” приведена информация о статусе сертификации решения: как самостоятельное СКЗИ или как решение, исследование которого было проведено в рамках сертификации КриптоПро CSP. Во втором случае указана соответствующая версия криптопровайдера.

Решение
Платформа
Сертификация
Класс защиты

CSP + IIS
Windows
любая поддерживаемая версия CSP
КС1, КС2*, КС3*

CSP + Apache
Linux
начиная с CSP 5. 0 R2
КС1, КС2*, КС3**

CSP + nginx
Linux
начиная с CSP 5. 0 R2
КС1, КС2*, КС3**

NGate
Усиленная ОС на базе Linux Debian
самостоятельное СКЗИ
КС1, КС2, КС3

 * – требуются дополнительные настройки и технические средства защиты ** – КС3 только под Astra Linux

TLS-клиент с ГОСТ

Одна из важнейших задач, стоящих перед командой КриптоПро, – создание для пользователя как можно более комфортных условий при работе с сервисами по TLS c ГОСТ. В настоящее время мы предлагаем несколько вариантов решений, включающих в себя как готовые клиентские решения для стационарных устройств, так и решения для разработки собственных мобильных приложений.

Решения для стационарных устройств

Одним из популярных клиентских сценариев является взаимодействие клиента с сайтом, требующим защиту соединения с помощью отечественных алгоритмов (например, сайты банков). В этом случае необходимо, чтобы клиент со своей стороны, так же как и сервер, поддерживал работу по TLS с ГОСТ. Наиболее удобным решением является использование на стороне клиента криптопровайдера КриптоПро CSP совместно с одним из поддерживаемых браузеров.

Кратко о решении:

  • На стороне клиента устанавливается КриптоПро CSP и один из поддерживаемых браузеров
  • Решение не требует никакой дополнительной разработки
  • Такое использование бесплатно для клиента (если с его стороны нет аутентификации по ключу и сертификату).

Ниже представлена сравнительная таблица характеристик поддерживаемых браузеров. Прочерк в колонке “Cертификация” означает необходимость проведения тематических исследований.

Браузер
Платформа
Сертификация
Класс защиты

Internet Explorer
Windows
любая поддерживаемая версия CSP
КС1, КС2*, КС3*

Спутник Браузер
Windows, Astra Linux, ALT Linux
самостоятельное СКЗИ
КС1, КС2*

Chromium-Gost
Astra Linux
начиная с CSP 5. 0 R2
КС1, КС2*, КС3*

Windows, Linux, MacOS

Яндекс. Браузер
Windows
начиная с CSP 5. 0 R2
КС1, КС2*, КС3*

 * – требуются дополнительные настройки и технические средства защиты

Решения для мобильных устройств

КриптоПро предоставляет возможность встраивания поддержки отечественных криптоалгоритмов в ваше мобильное приложение при помощи КриптоПро CSP для операционных систем iOS и Android.

  • CSP встраивается в мобильное приложение, пользователю не требуется устанавливать дополнительное ПО
  • Приложение может использовать как российские, так и иностранные криптонаборы
Читайте также:  Как получить сертификат электронной подписи для физического лица в личном кабинете

Ниже представлен список поддерживаемых операционных систем и соответствующих классов защиты:

Операционная система
Сертификация
Класс защиты

iOS
любая поддерживаемая версия CSP
КС1

Android
начиная с CSP 5. 0
КС1

В случае использования КриптоПро CSP версии 5. 0 R2 встраивание не требует проведения тематических исследований. Для CSP 5. 0 и более ранних версий требуются тематические исследования.

Другие решения

Протокол TLS позволяет обеспечивать защищенное соединение между любыми узлами в сети, что выводит область его применения за рамки представленных решений. TLS может обеспечивать защищенную передачу данных между узлами блокчейна, между пользователями VoIP, фактически между любыми двумя приложениями. Мы предлагаем продукт, позволяющий решить и такие задачи.

Приложение stunnel, входящее в дистрибутив КриптоПро CSP, позволяет устанавливать защищенный с помощью отечественных криптонаборов канал между любыми двумя незащищенными приложениями без дополнительной разработки.

Ниже представлен список наиболее популярных поддерживаемых операционных систем и соответствующих классов защиты:

Операционная система
Сертификация
Класс защиты

Windows
любая поддерживаемая версия CSP
КС1, КС2*, КС3*

Linux
КС1, КС2*, КС3**

MacOS
КС1

 * – требуются дополнительные настройки и технические средства защиты ** – КС3 только под Astra Linux

Как настроить доверие к сертификату?

Не секрет, что почти все механизмы аутентификации сторон в протоколе TLS построены на основе инфраструктуры открытых ключей (PKI), одной из основных компонент которой является сертификат открытого ключа сервера или клиента. С помощью сертификата происходит доверенное связывание идентифицирующей сторону информации (например, имени домена сервера) с открытым ключом, для этого используется указанная в сертификате информация о том, кому принадлежит открытый ключ. Данный ключ и соответствующий ему закрытый ключ используются для аутентификации стороны при выполнении протокола TLS, при этом сертификат пересылается по каналу в процессе взаимодействия.

Подробнее о том, что такое сертификат в TLS

Для того, чтобы механизм аутентификации функционировал корректно, необходимо, чтобы аутентифицирующая сторона могла убедиться, что информация, содержащаяся в переданном сертификате, является корректной и не была сформирована злоумышленником. Фактически, нам необходимо решить проблему доверия к открытым ключам. Это делается за счет наличия третьей стороны, которой доверяют все стороны информационного обмена – Удостоверяющего Центра (УЦ), выдающего сертификаты.

Строго говоря, когда мы говорим о передаче сертификата, мы имеем в виду передачу целой цепочки сертификатов («цепочку доверия»), где каждый сертификат подписывается закрытым ключом, соответствующим тому сертификату, который находятся выше в иерархии.

Если мы хотим проверить полученный сертификат, нам необходимо проверить подписи всех сертификатов в цепочке, опираясь на ключ проверки подписи из следующего по рангу сертификата. Следуя такому принципу, рано или поздно мы встретим сертификат, на котором цепочка заканчивается (т. сертификат, для которого нет сертификата с открытым ключом, который можно было бы использовать для проверки подписи). Такие сертификаты называются корневыми (root certificate). Корневые сертификаты устанавливаются доверенным образом, и в них указана информация, ассоциированная с доверенным УЦ.

В протоколе TLS предусмотрена возможность аутентификации и сервера, и клиента (двухсторонняя аутентификация), однако обязательной является только аутентификация сервера. Наиболее распространенным сценарием использования протокола является взаимодействие браузера с сайтом, в рамках которого обычно необходима только односторонняя аутентификация. Поэтому далее мы поговорим о том, как правильно и безопасно настроить доверие к сертификату сервера в рамках работы TLS c ГОСТ.

При работе по протоколу TLS с ГОСТ клиент может доверять сертификату, если его корневым сертификатом является либо сертификат головного удостоверяющего центра Минцифры России (сертификат ГУЦ), либо сертификат любого доверенного удостоверяющего центра (сертификат TLS-CA). Сертификаты, имеющие в качестве корневого сертификат ГУЦ, выдаются только аккредитованными удостоверяющими центрами по 63-ФЗ «Об электронной подписи». Отметим, что сертификат, использующийся для аутентификации сервера по протоколу TLS, не обязан быть полученным в аккредитованном удостоверяющем центре, достаточно, чтобы сертификат был выдан доверенным в рамках системы удостоверяющим центром.

Сертификат, корневым сертификатом которого будет TLS-CA, можно получить в нашем удостоверяющем центре CryptoPro TLS-CA. Отдельно отметим, что сертификат можно получить полностью удаленно, не посещая офис компании, воспользовавшись распределенной схемой обслуживания. Подробно о процедуре получения сертификата можно узнать на странице нашего удостоверяющего центра.

Настроить в браузере доверие к сертификату сервера можно одним из следующих способов:

  • вручную:
    браузер клиента предупреждает пользователя о том, что сертификат не входит в список доверенных, клиент может “согласиться” доверять этому сертификату и продолжить устанавливать TLS соединение. Однако, очевидно, что возлагать ответственность за принятие такого решения на пользователя является не самым безопасным решением.администратор безопасности системы заносит сертификат сервера в доверенные в ручном режиме, что является достаточно безопасным, но не самым удобным решением.
  • браузер клиента предупреждает пользователя о том, что сертификат не входит в список доверенных, клиент может “согласиться” доверять этому сертификату и продолжить устанавливать TLS соединение. Однако, очевидно, что возлагать ответственность за принятие такого решения на пользователя является не самым безопасным решением.
  • администратор безопасности системы заносит сертификат сервера в доверенные в ручном режиме, что является достаточно безопасным, но не самым удобным решением.
  • автоматически без участия человека:

При установке КриптоПро CSP версии 4. 0 R3 и выше для работы браузера по ГОСТ сертификат ГУЦ и сертификат удостоверяющего центра CryptoPro TLS-CA добавятся в список доверенных автоматически. Таким образом, доверие распространится на любой сертификат, выданный аккредитованным УЦ или CryptoPro TLS-CA, причем после прохождения полноценной проверки, не требующей принятия решений от человека.

Тестирование ГОСТ TLS

КриптоПро TLS входит в состав КриптоПро CSP на всех ОС и не требует отдельной установки.

Для использования протокола TLS предварительно получите сертификат по шаблону “Сертификат пользователя УЦ”. Это можно сделать на тестовом Удостоверяющем центре КриптоПро.

Тестовая страница для установления защищенного соединения с сервером с двусторонней аутентификацией. Для работы тестовой страницы необходимо разрешить порт 4444 для исходящих соединений.

Дополнительные стенды для тестирования TLS.

Документация

Онлайн-версия руководства программиста доступна на нашем сайте.

Настройка центра сертификации

В «Диспетчере серверов (Server manager)» – выбираем «Служба сертификации Active Directory (AD CS) – правой клавишей по вашему серверу и открываем: «Центр сертификации (Certification Authority).

Вы попали в оснастку управления центром сертификации: certsrv.

Выбираем ваш центр сертификации и открываем свойства (рис. 10):

Рисунок 10. Настройка центра сертификации. Оснастка управления центром сертификации certsrv.

Следующим важным шагом выступает настройка точек распространения CDP и AIA.

Authority Information Access (AIA) — содержит ссылки на корневой сертификат центра сертификации (Certification Authority)

CRL Distribution Point — содержит ссылки на файлы CRL, которые периодически публикует сервер CA, который издал рассматриваемый сертификат. Этот файл содержит серийные номера и прочую информацию о сертификатах, которые были отозваны. (рис. 11)

Мы используем веб-сервер, который доступен как внутри сети, так и из интернета (так как сертификаты могут использоваться пользователями интернета) по одному и тому же URL.

В разделе свойства переходим в «Расширения (Extensions):

Удаляем ненужные точки распространения и оставляем локальную и внешнюю ссылку для CDP:

Ставим галочки «Включить в CRL. Включить в CDP (Include in CRL. Include in the CDP)».

Ставим галочку: «Включать в AIA- расширение выданных сертификатов (Include in the AIA extension of issued certificates)»

Ставим галочку: «Включать в расширение протокола OCSP (Include in the online certificate status protocol (OCSP) extension)»

Рисунок 11. Настройка точек распространения AIA и CRL

В свойствах центра сертификации можно настроить автоматический выпуск сертификатов при поступившем запросе. Так вы исключаете возможность проверки указанных требуемых полей сертификатов. Для этого перейдите в «Модуль политик (Policy Module)» — «Свойства (Properties)» и выберите соответствующий пункт:

В первом случае сертификату присваивается режим ожидания, а одобрение выпуска сертификата остается за администратором;

Во втором случае из-за отсутствия шаблонов в Standalone CA сертификаты будут выпускаться автоматически. (рис. 12)

Рисунок 12. Дополнительные настройки ЦС для автоматического выпуска сертификатов

Да, центр сертификации уже функционирует и доступен по указанному dns-имени. Не забудьте открыть 80 и 443 порты для функционирования веб-сервера и online-reposnder’a, настройкой которого мы займёмся далее.

При переходе по ссылке извне в IE необходимо добавить наш веб-сервер в «Надежные сайты (Trusted Sites)» в настройках в пункте «Безопасность». Не забудьте, что должен быть установлен КриптоПро CSP, в ином случае при выпуске сертификата вам не будет доступен выбор ГОСТовского криптопровайдера (рис. 13).

Рисунок 13. Веб-интерфейс центра сертификации. Формирование запроса. Правильное отображение

Вернёмся в оснастку certsrv к нашему центру сертификации и настроим выпуск разностных CRL. Для этого необходимо открыть «Свойства (Properties)» раздела «отозванных сертификатов (Revoked Certificates)» (рис. 14).

Задаём «Интервал публикации CRL (CRL Publications interval)».

Включаем публикацию разностных CRL и задаём интервал.

Кажется, что все хорошо. Но есть один момент:

Выполните следующую команду в power shell:

Рисунок 14. Настройка параметров публикации CRL.

Оцените статью
ЭЦП Эксперт
Добавить комментарий