Настройка проверки принадлежности УЦ к определенному списку
Примечание
Квалифицированная электронная подпись (КЭП) создается с помощью сертифицированных ФСБ криптографических средств и имеет сертификат от аккредитованного удостоверяющего центра, выступающего гарантом подлинности подписи. Электронный документ, подписанный КЭП, во всех случаях приравнивается законодательством к бумажному документу с собственноручной подписью.
Подтверждение подлинности ЭП сертификата, изданного удостоверяющим центром, входящим в список аккредитованных удостоверяющих центров Министерства цифрового развития, связи и массовых коммуникаций, и соответствующих электронных подписей при помощи КриптоПро SVS возможно после выполнения следующих условий:
- Корневой сертификат Головного удостоверяющего центра должен быть установлен в хранилище сертификатов SVS.
- Сертификаты подчиненных Удостоверяющих Центров: «УЦ 1 ИС ГУЦ», «УЦ 2 ИС ГУЦ» должен быть установлен в хранилище «Промежуточные центры сертификации» локального компьютера.
- Сертификат аккредитованного УЦ в режиме подчинения должен быть установлен в хранилище «Промежуточные центры сертификации» локального компьютера.
- КриптоПро SVS должен иметь возможность проверки статуса сертификата по CRL или OCSP-ответу. Для этого необходимо либо установить локально и регулярно обновлять CRL, либо обеспечить доступ с сервера SVS в интернет для возможности загрузки CRL или проверки актуального статуса сертификата по протоколу OCSP.
Для удобства установки всех необходимых сертификатов аккредитованных УЦ и CRL рекомендуется использовать утилиту TSLTool
:
- утилита включена в состав установки КриптоПро SVS для Windows под именем
Dss.TslTool.exe
; - утилита должна быть установлена из дистрибутива cprotools для *nix, поставляемого в комплекте с дистрибутивом SVS.
Утилита TSLTool
предназначена для выполнения следующих действий:
- Установка корневого сертификата Головного удостоверяющего центра
- Загрузка TSL (списка аккредитованных УЦ, Trust-service Status List)
- Установка сертификатов подчиненных УЦ
- Загрузка и установка CRL аккредитованных УЦ
- Удаление CRL и сертификатов аккредитованных УЦ с истекшим сроком действия
Установка TSLTool
Установка TSLTool
для Windows
Утилита распространяется в самораспаковывающемся архиве DssTslTool.exe
, который
необходимо установить в каталог C:\Program Files\Crypto Pro\DSS\VerificationService.
Получение справки по работе утилиты и примеры команд:
# Перед запуском требуется перейти в директорию, куда была установлена утилита
DSS.TslTool.exe --help
Установка TSLTool
для *nix
1. Загрузите на сервер дистрибутив cptools.
2. Разархивируйте дистрибутив cptools.
3. Перейдите в папку, в которую был распакован архив на предыдущем шаге, и установите
утилиту TSLTool
.
sudo dpkg -i "cprotools-tsl_*"
Утилита будет установлена в папку /opt/cprotools/tsltool/
.
Получение справки по работе утилиты и примеры команд:
tsltool --help
Общая настройка
Общая настройка редкоизменяемых параметров выполняется при помощи редактирования конфигурационного файла
(appsettings.json
для *nix, DSS.TslTool.exe.config
для Windows), расположенного в директории
установки утилиты.
В конфигурационном файле указаны следующие параметры:
TempFolder
- директория для временного хранения сертификатов и CRLLogFile
– директория для хранения журналов приложения. По умолчанию файлы журналов расположены в/var/log/cprotools/tsltool/log.txt
RootCaUrl
– URL–адрес списка аккредитованных удостоверяющих центровLoaderTimeout
– тайм-аут загрузки сертификатов и CRLForceCrlForCA
– перечень наименований УЦ, сертификаты которых необходимо загрузить (имя должно соответствовать имени, указанному в TSL.xml)AddTimeToFilename
– флаг, показывающий, что при сохранении файлов нужно добавлять к имени файла метку времениForceInstallToCaStore
– флаг, показывающий, что необходимо пропустить интерактивное предупреждение об установке большого количества промежуточных сертификатов в системное хранилище и принудительно установить все сертификаты в хранилище Промежуточных центров сертификацииSerilog
- (только для *nix
) настройка журналирования работы утилиты. По умолчанию утилита настроена таким образом, что журнал может быть разобран Центром Мониторинга. Изменение параметров может быть произведено согласно описанию соответствующего приемника Serilog
Сценарии использования
Сценарий использования в ОС Windows
С прямым доступом в интернет
- Первоначальная установка всех необходимых сертификатов и CRL:
DSS.TslTool.exe --rootstorages <SVSName>-TSL --castorages <SVSName>-CA --onlyvalidca
Где <SVSName>-root и <SVSName>-CA – наименование хранилища КриптоПро SVS.
Примечание
Имя хранилища сертификатов для установки сертификата головного удостоверяющего Центра
зависит от имени Веб-приложения SVS и имеет вид <ApplicationName>-TSL
.
Имя хранилища сертификатов и CRL для установки
сертификатов подчиненных удостоверяющих Центров имеет вид <ApplicationName>-CA
.
Примечание
При обновлении с версий SVS 2.0.2300 и предыдущих рекомендуется очистить хранилище Промежуточные центры сертификации локального компьютера от ранее установленных сертификатов и CRL. Большое количество сертификатов и CRL в данном хранище замедляет как работу SVS, так и системы в целом.
Примечание
Для того чтобы устанавливать сертификаты и CRL удостоверяющих центров, имеющих аккредитацию на момент запуска утилиты,
используется параметр --onlyvalidca
.
- Обновление сертификатов аккредитованных УЦ и CRL
DSS.TslTool.exe --skiproot --skipcrl --removeoutOfdatecrl --removeoutOfdatecert --castorages <SVSName>-CA --onlyvalidca # Загрузка и установка сертификатов аккредитованных УЦ из XML-файла
DSS.TslTool.exe --skiproot --skipcerts --removeoutOfdatecrl --removeoutOfdatecert --castorages <SVSName>-CA --onlyvalidca # Загрузка и установка CRL файлов
Примечание
Выполнение данных команд можно добавить в планировщик Windows для регулярного обновления CRL.
Без доступа в интернет
В случае если сервер SVS не имеет выхода в интернет, то сертификаты аккредитованных УЦ и CRL могут быть установлены из файла. Для этого на машине, имеющей выход в Интернет, следует запустить утилиту со следующими параметрами.
DSS.TslTool.exe --downloadcrlonly --skipcerts --skiproot --onlyvalidca
Описание параметров:
Параметр | Описание |
---|---|
-y, --downloadcrlonly | Загрузить CRL, не устанавливая их в хранилище |
-r, --skiproot | Пропустить загрузку и установку сертификата головного УЦ |
-e, --skipcerts | Пропустить установку сертификатов |
--onlyvalidca | Загружать из файла TSL только сертификаты УЦ с действующей аккредитацией |
После выполнения данной команды в каталог <утилита>\tmp
будут сохранены
TSL и CRL. Каталог для сохранения объектов, загруженных из сети, при необходимости
может быть изменен.
Примечание
Для запуска утилиты Dss.TslTool.exe
на другом хосте необходимо наличие .NET Framework
4.6.1. Установочный файл может быть взят с дистрибутивного диска.
Далее необходимо перенести каталог с загруженными файлами на сервер КриптоПро SVS. Для установки сертификатов аккредитованных УЦ и CRL из файла необходимо запустить утилиту со следующими параметрами:
DSS.TslTool.exe --crlfromfolder C:\temp\ --tslfile C:\temp\tsl.xml --castorages <SVSName>-CA --removeoutofdatecrl --removeoutofdatecert --onlyvalidca
Сценарий использования в ОС *nix
С прямым доступом в интернет
1. Запустите утилиту TSLTool
с помощью команды (команда выполняет первоначальную установку всех необходимых сертификатов и CRL).
sudo tsltool --rootstorages <SVSName>-root --castorages <SVSName>-CA --onlyvalidca
Где <SVSName>-root и <SVSName>-CA – наименование хранилища КриптоПро SVS.
2. Дождитесь сообщения об успешной загрузке и установке сертификатов и CRL.
С доступом в интернет через прокси-сервер
Для настройки доступа через прокси необходимо задать новые пользовательские переменные окружения для того
пользователя, от имени которого будет запускаться утилита TSLTool
. Для этого необходим выполнить следующие действия:
1. Перейти в в /home/имя_пользователя
и открыть конфигурационный файл .profile
.
sudo nano ./.profile
2. В конец конфигурационного файла необходимо добавить следующие параметры:
export {http,https}_proxy="http://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>"
После завершения редактирования файл необходимо сохранить.
3. Применить настройки с помощью следующей команды:
. ./.profile
4. Повторить сценарий настройки TSLTool
с прямым доступом в интернет.
Без доступа в интернет
В рамках данного сценария предполагается использование утилиты на двух узлах:
- внешний сервер – узел, имеющий доступ к сети Интернет для доступа к tsl-списку Минцифры России и спискам отозванных сертификатов (CRL). Данный узел является промежуточным, осуществляет загрузку данных посредством TslTool и их передачу на внутренний ресурс.
- внутренний сервер – узел без доступа к сети Интернет, является целевым узлом, для которого посредством утилиты TslTool будет выполняться установка подчиненных сер-тификатов аккредитованных удостоверяющих центров (АУЦ) и списков отозванных сертификатов.
Запуск TSLTool на внешнем сервере
1. Выполнить загрузку всех необходимых сертификатов и CRL только аккредитованных УЦ.
sudo tsltool --downloadcrlonly --skipcerts --skiproot --onlyvalidca
Описание параметров:
Параметр | Описание |
---|---|
-y, --downloadcrlonly | Загрузить CRL, не устанавливая их в хранилище |
-r, --skiproot | Пропустить загрузку и установку сертификата головного УЦ |
-e, --skipcerts | Пропустить установку сертификатов |
--onlyvalidca | Загружать из файла TSL только сертификаты УЦ с действующей аккредитацией |
Запуск TSLTool
на внутреннем сервере
1. Выполнить перенос загруженных XML и CRL файлов на внутренний сервер вручную либо убедитесь, что директория с содержимым внешнего сервера доступна с внутреннего (например, в виде сетевого ресурса).
2. Установить сертификаты Минкомсвязи с помощью утилиты certmgr (входит в состав СКЗИ КриптоПро CSP 5.0).
sudo /opt/cprocsp/bin/amd64/certmgr -install -store mroot -f “путь к файлу сертификата Минкомсвязи”
3. Установить XML и CRL файлы с помощью TSLTool
.
# Установка сертификатов УЦ из TSL
sudo tsltool --skiproot --castorages <SVSName>-CA --removeoutofdatecrl --removeoutofdatecert --tslfile /.../TSL.xml --skipcrl --onlyvalidca
# Установка CRL из папки с загруженными ранее CRL
sudo tsltool --castorages <SVSName>-CA --crlfromfolder /.../crl/
Где <SVSName>-CA – наименование хранилища (экземпляра) КриптоПро SVS.
Описание параметров:
Параметр | Описание |
---|---|
-s, --rootstorages | Список имен хранилищ для установки корневых сертификатов (для установки сертификатов Головного УЦ) |
-i, --castorages | Список имен хранилищ для установки сертификатов подчиненных УЦ и CRL |
-l, --crlfromfolder | Установить CRL в хранилище из указанной папки |
-r, --skiproot | Пропустить загрузку и установку сертификата головного УЦ |
-x, --removeoutOfdatecrl | Удалить CRL с истекшим сроком действия |
-q, --removeoutOfdatecert | Удаление сертификатов с истекшим сроком действия |
--onlyvalidca | Загружать из файла TSL только сертификаты УЦ с действующей аккредитацией |
Настройка регулярного обновления сертификатов и CRL
Выполните настройку с помощью CRON со следующими параметрами:
- Загрузка и установка сертификатов аккредитованных УЦ из XML-файла – раз в сутки
- Загрузка и установка CRL файлов – раз в 1 час
sudo crontab -e
# В появившемся окне указать следующее
0 0 * * * sudo /opt/cprotools/tsltool/tsltool --skiproot --skipcrl --removeoutOfdatecrl --removeoutOfdatecert --castorages <SVSName>-CA --onlyvalidca # Загрузка и установка сертификатов аккредитованных УЦ из XML-файла – раз в сутки
0 * * * * sudo /opt/cprotools/tsltool/tsltool --skiproot --skipcerts --removeoutOfdatecrl --removeoutOfdatecert --castorages <SVSName>-CA --onlyvalidca # Загрузка и установка CRL файлов – раз в час
Где <SVSName>-root и <SVSName>-CA – наименование хранилищ, соответствующих экземпляру КриптоПро SVS.