152 lines
12 KiB
Markdown
152 lines
12 KiB
Markdown
# Выпуск корневого сертификата
|
||
|
||
**Самоподписанный сертификат** – сертификат, изданный самим пользователем, без обращения к доверенной стороне Удостоверяющему центру. Самоподписанный сертификат является одновременно личным и корневым (устанавливается в Личное хранилище сертификатов и «Доверенные корневые центры сертификации»).
|
||
|
||
Самоподписанные сертификаты используются для обмена зашифрованными или подписанными документами между людьми, доверяющими друг другу, например, друзьями, коллегами. Обменявшись такими сертификатами между собой, они могут пересылать друг другу подписанные и зашифрованные электронные данные, не беспокоясь при этом, что информация может быть перехвачена, искажена и использована против их интересов.
|
||
|
||
!!! note
|
||
Важно помнить, что использование самоподписанных сертификатов не позволяет решать конфликтные ситуации, возникающие при обмене конфиденциальными данными, с помощью суда.
|
||
## Техническая реализация
|
||
|
||
1. На сервер приложения устанавливается компоненты КриптоПро CSP в единственном количестве.
|
||
|
||
2. С помощью утилиты Крипто АРМ, входящую в КриптоПро CSP, выпускается столько корневых сертификатов, сколько организаций будут работать в данном приложении.
|
||
|
||
3. В качестве корневого необходимо выпустить и использовать самоподписанный сертификат. Для этого при выпуске в назначении ключа во вкладке «Дополнительно» нужно указать «Подпись сертификатов».
|
||
|
||
## Создание сертификата
|
||
|
||
Запустите программу КриптоАРМ.
|
||
|
||

|
||
|
||
В дереве элементов главного окна выберите раздел **Сертификаты**. Вызовите правой клавишей мыши контекстное меню и выберите пункт **Создать > Самоподписанный сертификат.**
|
||
|
||

|
||
|
||
Откроется Мастер создания самоподписанного сертификата.
|
||
|
||
На первом шаге ознакомьтесь с порядком и требованиями создания самоподписанного сертификата. Нажмите Далее.
|
||
На следующем шаге из выпадающего списка выберите шаблон сертификата:
|
||
|
||

|
||
|
||
!!! note
|
||
**Шаблон по умолчанию**
|
||
|
||
При создании запроса на сертификат по «шаблону по умолчанию» необходимо ввести базовую информацию о владельце: Идентификатор, Организация, Город, Область, Страна, E-Mail и ИНН;
|
||
|
||
**Шаблон с расширенным списком полей**
|
||
|
||
При создании запроса на сертификат по «шаблону с расширенным списком полей» дополнительно к базовой информации добавляется следующая: Должность, Подразделение, Регион, Населенный пункт, Адрес
|
||
|
||
Укажите идентификационную информацию о владельце будущего сертификата, в зависимости от того, какой шаблон вы выбрали на предыдущем шаге.
|
||
|
||

|
||
|
||
!!! note
|
||
Поля отмеченные знаком «*» являются обязательными для заполнения.
|
||
|
||
Обратите внимание, если вы указываете ИНН юридического лица, номер всегда должен начинаться с «00», например 007707049388.
|
||
|
||
СНИЛС указывается без пробелов и знаков «-», например, 07306654534.
|
||
|
||
В открывшемся окне **Параметры ключа** в выпадающем списке выберите укажите следующие настройки:
|
||
|
||
* Используемый криптопровайдер, например:
|
||
|
||

|
||
|
||
Выберите вариант создания ключевого набора:
|
||
|
||
* Создать ключевой набор - сертификат будет создан на основе нового ключевого набора.
|
||
|
||
* Использовать существующий ключевой набор – выберите ключевой набор, который будет использован при создании сертификата, из списка существующих (кнопка Выбрать).
|
||
|
||

|
||
|
||
* Установите переключатель напротив необходимого **Назначения ключа сертификата**, например:
|
||
|
||

|
||
|
||
* Вы также можете выбрать дополнительное назначение ключа, нажав на кнопку **Дополнительно**. В списке назначений использования ключа выберите необходимое:
|
||
|
||

|
||
|
||
В разделе **Срок действия сертификата** автоматически проставляется дата, с которой сертификат действителен (текущее системное время) и дата, по которую сертификат действителен (1 год вперед от текущего времени). Эти даты вы можете отредактировать.
|
||
|
||

|
||
|
||
После всех сделанных изменений нажмите "Ок".
|
||
|
||
* Укажите необходимую Длину ключа. Например, 2096
|
||
|
||

|
||
|
||
* **Пометить ключи как экспортируемые.** Если вы отметите этот флаг, то сможете проводить экспорт сертификата вместе с закрытыми ключами.
|
||
|
||
На основе указанных данных будет сформирован самоподписанный сертификат открытого ключа. После завершения операции возникнет окно с информацией о ее результатах. Нажмите Готово.
|
||
|
||

|
||
|
||
В открывшемся окне выберите носитель для создания контейнера с ЭП и нажмите Ок:
|
||
|
||

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

|
||
|
||
В окне аутентификации задайте пароль для контейнера и нажмите Ок:
|
||
|
||

|
||
|
||
На запрос системы установить ли самоподписанный сертификат в хранилище Доверенных корневых центров сертификации, нажмите на кнопку Да.
|
||
|
||

|
||
|
||
В дереве элементов главного окна в разделе **Сертификаты** выберите **"Личное хранилище сертификатов"**. В данном разделе будет отображен только что созданный самоподписанный сертификат.
|
||
|
||

|
||
|
||
## Организация корневого сертификата на проекте
|
||
|
||
На проекте для электронной цифровой подписи используется система корневых сертификатов. Для выпуска необходимо выполнить следующее:
|
||
|
||
1) Выпустить корневые сертификаты в формате **pfx** по примеру описанном [выше](#создание_сертификата) . Их должен выпустить ответственный исполнить со стороны Заказчика.
|
||
|
||
!!! note
|
||
На каждый филиал выпускается отдельный корневой сертификат
|
||
|
||
2) Далее ответственный исполнить со стороны Заказчика должен передать данные по сертификату в техническую поддержку вместе с паролями и отпечатками подписей;
|
||
|
||
3) Все корневые сертификаты необходимо поместить в архив с названием `certificates.tar` без подпапок;
|
||
|
||
4) Данный архив переместить в папку `dss` в репозиторий с деплоем проекта;
|
||
|
||
5) В файле `import-cert.sh` прописать импорт и установку сертификата. Пример файла `import-cert.sh` выглядит следующим образом:
|
||
|
||
```
|
||
# Установка лицензии криптопро
|
||
/opt/cprocsp/sbin/amd64/cpconfig -license -set <ENTRY_LICENSE>
|
||
/opt/cprocsp/sbin/amd64/cpconfig -license -view
|
||
|
||
# Пример установки сертификата для интеграции с Контур
|
||
/opt/cprocsp/bin/amd64/certmgr -install -pfx -file /root/certificates/tls.pfx -pin <ENTRY_YOU_PIN> -silent
|
||
|
||
# Пример установки корневого сертификата, который используется в ОЭЦП от Лексемы
|
||
/opt/cprocsp/bin/amd64/certmgr -install -pfx -store mRoot -file /root/certificates/root.pfx -pin <ENTRY_YOU_PIN> -silent
|
||
```
|
||
|
||
6) Далее необходимо произвести сборку проекта;
|
||
|
||
7) После сборки перейти в форму "Управление компаниями" и в поле "Отпечаток" прописать отпечаток сертификата от соответствующей компании;
|
||
|
||

|
||
|
||
!!! note
|
||
Данный пункт необходимо проделать на каждом филиале организации
|
||
|
||
!!! warning
|
||
|
||
Максимальный срок корневого сертификата может составлять 1 год и 3 месяца, после чего необходимо выпустить новый корневой сертификат. Также корневой сертификат необходимо перевыпустить в случае ошибки **0x80090010** во время выпуска сертификата УНЭП. |