Содержание

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Архив с программным обеспечением (КриптоПро CSP) можно загрузить c официального сайта www.cryptopro.ru, предварительно зарегистрировавшись на сайте.

Для ОС AstraLinux Astra Linux следует загрузить пакет:

КриптоПро CSP 4.0 для Linux (x64, deb) -  пакет для 64 разрядной системы.

...

К моменту написания статьи, была использована сертифицированная версия ПО «КриптоПро» «4.0 R3»R4».

Для примера был проделан следующий алгоритм действий:

1) Загрузка архива с сертифицированной версией ПО «КриптоПро» «4.0 R3»:

Название полученного файла: «linux-amd64_deb.tgz».

...

5) Перейдем в директорию с ПО 

cd / linux-amd64_deb

6) выполним установку ПО с помощью запуска скрипта "install.sh" или  "instal_gui.sh" командой:

sudo ./install_gui.sh

Image Modified* Выбрать необходимые модули, библиотеки.

...

Code Block
export PATH="$(/bin/ls -d /opt/cprocsp/{s,}bin/*|tr '\n' ':')$PATH"

 


Установка дополнительных пакетов с модулем поддержки  для токена

...

библиотека libccid, libgost-astra , пакеты pcscd, libpcsclite1

Code Block
sudo apt install libccid pcscd libpcsclite1 libgost-astra

Пакеты с модулем поддержки для:

Рутокен: https://www.rutoken.ru/support/download/rutoken-for-cpnix/

Алладин: https://www.aladdin-rd.ru/support/downloads/jacarta

...

Code Block
sudo service pcscd restart



Warning
Начиная с версии КриптоПро 4.0 R4 и выше, модули поддержки смарткарт входят в состав пакета.



Проверка лицензии

Проверить срок истечения лицензии можно командой:

...

sudo /opt/cprocsp/sbin/amd64/cpconfig -license -set <ваш_лицензионный_номер>

Установка КриптоПро ЭЦП Browser plug-in

a)Установить пакет alien, необходимый для конвертации rpm-пакетов в deb-формат

$ sudo apt install alien

б) Загрузить архив cades_linux_amd64.zip

https://www.cryptopro.ru/products/cades/plugin/get_2_0

Note

Подписанные cades_deb пакеты для Astra Smolensk 1.6

View file
namecprocsp-pki-cades_2.0.0-2_amd64_signed.deb
height250
View file
namecprocsp-pki-plugin_2.0.0-2_amd64_signed.deb
height250

в) Распаковать архив cades_linux_amd64.zip перейти в каталог с распакованными файлами и выполнить команды:

alien -dc cprocsp-pki-2.0.0-amd64-cades.rpm

alien -dc cprocsp-pki-2.0.0-amd64-plugin.rpm

г) Установить deb-пакеты:

dpkg -i cprocsp-pki-cades_2.0.0-2_amd64.deb cprocsp-pki-plugin_2.0.0-2_amd64.deb

д) Дальнейшие настройки различаются в зависимости от используемого браузера:

    • Браузер Chrome

Запустите Chrome и дождитесь оповещения об установленном расширении "CryptoPro Extension for CAdES Browser Plug-in". Включите это расширение. Если на Вашем компьютере ранее уже выполнялась установка КриптоПро ЭЦП Browser plug-in, а потом он был удален, потребуется отдельно установить расширение. Для этого перейдите по ссылке и установите расширение из интернет-магазина Chrome.

Image Removed

    • Браузер Opera или Яндекс.Браузер

      расширение доступно по ссылке.

Image Removed

    • Браузер Firefox

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

Image Removed

 Проверка корректности установки на странице проверки плагина

Для этого в открывшемся окне подтвердите доступ путем нажатия кнопки "Да".

Image Removed

Если установка КриптоПро ЭЦП Browser plug-in прошла успешно, появится окно с надписью "Плагин загружен", указанием его версии и используемой Вами версии КриптоПро CSP.

Image Removed

е) Сайт проверки плагина

д) Тестовый сайт предложит Вам подписать документ и выбрать нужный Вам сертификат.

В случае если у Вас отсутствуют "личные сертификаты" → нажимаем на корневой сертификат тестового УЦ - Просмотреть - Подробности - Экспортировать - Сохранить.

Открываем эмулятор терминала и выполняем от root`а:

/opt/cprocsp/bin/amd64/certmgr -inst -cert -file /home/u/Загрузки/CRYPTO-PROTestCenter2.crt -store mroot

Перезапускаем браузер.

Заходим на страницу проверки работы КриптоПро ЭЦП Browser Plug-in и нажимаем получить, выполняем все всплывающие требования. Сертификат получен.

Note

В случае возникновения ошибки:

Image Removed

Следует перезагрузить систему или установить в ручную пакет cprocsp-compat-debian.deb

Альтернативный метод получения тестового сертификата

1) Перейдите на сайт Тестового Удостоверяющего центра ООО "КРИПТО-ПРО"

2) Для получение сертификата, перейдите в раздел Сформировать ключи и отправить запрос на сертификат

3) Заполните идентифицирующие сведения:

Image Removed

4) Нажмите "Выдать", после чего выйдет GTK-окно для создания случайных последовательностей:

Image Removed

5) После чего, CryptoPro CSP потребует вести новый пароль для контейнера

6) Тестовый УЦ КриптоПро уведомит нас о том, что сертификат выдан

Image Removed

7) Пройти по ссылке и установить сертификат, введя пароль контейнера.

8) После успешной установки сертификата, следует перейти на страницу проверки создания электронной подписи CAdES-BES

Image Removed

Получение тестового сертификата с помощью cli

Для запроса, получения и установки сертификата с тестового УЦ "КриптоПро"  - можно, воспользоваться одной командой:
cryptcp -creatcert -rdn 'E=email@astralinux.ru, CN=имя_сертификата' -cont '\\.\HDIMAGE\имя_контейнера' -hashalg 1.2.643.7.1.1.2.2


Носители и контейнеры

...

Идентификация токена

...

Подробная информация про "Имена контейнеров"

Создание локального носителя

Если локального носителя не существует, то его можно создать командой:

sudo /opt/cprocsp/sbin/amd64/cpconfig -hardware reader -add HDIMAGE store

Note

HDIMAGE размещается на /var/opt/cprocsp/keys/<имя пользователя>/

Создание контейнера

Для создания контейнера в носителе HDIMAGE следует воспользоваться командой:

/opt/cprocsp/bin/amd64/csptest -keyset -newkeyset -cont '\\.\HDIMAGE\TestCont'

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

/opt/cprocsp/bin/amd64/csptest -keyset -newkeyset -cont '\\.\Aktiv Rutoken ECP 00 00\TestCont'

Info
titleПримечание

Название токена может отличаться. Для идентификации воспользуйтесь командой: csptest -card -enum -v -v

В 5-ой версии КриптоПРО CSP v.5.0, для создания контейнера, имя носителя можно не указывать, а выбрать в интерактивном gtk-диалоге:

/opt/cprocsp/bin/amd64/csptest -keyset -newkeyset -cont 'имя_контейнера'

Image Removed

Для неизвлекаемого контейнера, в GTK-окне следует выбрать "Вид приложения" → "Active token without secure channel" :

Image Removed



Информация о контейнерах

Для просмотра подробной информации о контейнерах воспользуйтесь командой:

...

csptestf -keycopy -contsrc '\\.\HDIMAGE\Контейнер_оригинал' -contdest '\\.\Aktiv Rutoken ECP 00 00\Контейнер_копия'

Запрос на получение сертификата для созданного контейнера

Для создания запроса на получение сертификата для контейнера '\\.\Aktiv Rutoken ECP 00 00\Shuhrat' , воспользуемся командой:

Code Block
/opt/cprocsp/bin/amd64/cryptcp -creatrqst -dn "E=user@astralinux.ru,C=RU, CN=Махмадиев Шухрат, SN=Махмадиев" -hashalg 1.2.643.7.1.1.2.2 -nokeygen -both -ku -cont '\\.\Aktiv Rutoken ECP 00 00\Shuhrat' cert.req

...

В параметре -dn указываются данные, которые будут хранится в поле Subject сертификата.

В параметре -hashalg указывается алгоритм хэширования. В случае примера использовался  OID 1.2.643.7.1.1.2.2 - ГОСТ Р 34.11-12 с длиной 256

-nokeygen - использовать существующие ключи из указанного контейнера;

-both* - создать/использовать оба типа ключей;

-ku* - использовать контейнер пользователя (CURRENT_USER);

Более подробная информация про опции утилиты cryptcp: Инструкция_cryptcp.pdf

Созданный запрос будет сохранен в файле cert.req. Эти данные нужны для получения сертификата в удостоверяющем центре.

Для примера можно воспользоваться тестовым  удостоверяющим центром КриптоПро. Нам нужен пункт " Отправить готовый запрос PKCS#10 или PKCS#7 в кодировке Base64 ". На следующей странице в поле «Сохраненный запрос» вставляем содержимое файла cert.req и нажимаем кнопку «Выдать».

Info

Для просмотра содержимого cert.req, воспользуйтесь командой: $ cat  cert.req

После чего следует загрузить сертификат и цепочку сертификатов:

Image Removed

Для установки полученного личного сертификата от тестового УЦ, следует воспользоваться командой:

/opt/cprocsp/bin/amd64/certmgr -inst -file имя_полученного_сертификата.cer -cont '\\.\Aktiv Rutoken ECP 00 00\Shuhrat'

Для записи полученного сертификата в контейнер следует воспользоваться командой:

/opt/cprocsp/bin/amd64/csptest -keys -cont '\\.\Aktiv Rutoken ECP 00 00\Shuhrat' -keyt exchange -impcert имя_полученного_сертификата.cer

Image Removed

...

С помощью опции -certusage можно указать OID назначение сертификата

Назначение сертификата представляется в сертификате объектным идентификатором, присвоенным этой политике, - OID. Если в сертификате указано несколько политик, то это означает, что сертификат соответствует всем этим политикам списка.

...

может использоваться как сертификат серверной аутентификации

...

может использоваться как сертификат клиентской аутентификации

...

может использоваться для электронной подписи кода

...

может использоваться для защиты электронной почты (электронная подпись, шифрование, key agreement)

...

может использоваться для включения значения хэш-функции при создании штампа времени на документы в Службе штампов времени

...

может использоваться для формирования электронной подписи OCSP-запросов

* Объектные идентификаторы (OID) определяют отношения, при осуществлении которых электронный документ, подписанный ЭЦП, будет иметь юридическое значение. OID, зарегистрированные в Удостоверяющем центре, включаются состав следующих расширений сертификата ключа подписи: Key Usage (использование ключа), Extended Key Usage (расширенное использование ключа), Application Policy (политики применения сертификата).


Менеджер сертификатов КриптоПРО в Linux

...

Code Block
languagebash
Установка всех личных сертификатов с Рутокена в uMy :
$ /opt/cprocsp/bin/amd64/csptestf -absorb -cert -pattern 'rutoken'

Установка определенного сертификата с определенного контейнера в uMy:
$ /opt/cprocsp/bin/amd64/certmgr -inst -cont '\\.\Aktiv Rutoken ECP 00 00\Ivanov'

Установка сертификата удостоверяющего центра ГУЦ в mRoot:
$ sudo curl https://structure.mil.ru/files/morf/military/files/guc18.cer|sudo /opt/cprocsp/bin/amd64/certmgr -inst -store mRoot -stdin

Установка промежуточного сертификата МО в mca: 
$ sudo curl http://structure.mil.ru/download/doc/morf/military/files/CA2018.cer|sudo /opt/cprocsp/bin/amd64/certmgr -inst -store mca -stdin

Установка списка отвызвов (CRL), ставим его с того же сайта в mca:
$ sudo curl http://structure.mil.ru/download/doc/morf/military/files/crl_18.crl|sudo /opt/cprocsp/bin/amd64/certmgr -inst -store mca -stdin -crl

...

Для просмотра выше установленных сертификатов можно воспользоваться :

/opt/cprocsp/bin/amd64/certmgr -list



Удаление

Удаление сертификата из хранилища КриптоПро:

...

/opt/cprocsp/bin/amd64/cryptcp -copycert -dn CN=Имя_вашего_сертификата -df  /temp/сертификат.cer


Note

Можно указать другое поле сертификата: CN, E, SN, OGRN, SNILS и тд.


Code Block
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.
Утилита командной строки для подписи и шифрования файлов.

Будет использован следующий сертификат:

Субъект:"АКЦИОНЕРНОЕ ОБЩЕСТВО ""НАУЧНО-ПРОИЗВОДСТВЕННОЕ ОБЪЕДИНЕНИЕ РУССКИЕ БАЗОВЫЕ 
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ""", Москва, 77 г. 
Москва, RU, шоссе Варшавское д. 26, mail@rusbitech.ru
Действителен с 02.10.2018 14:31:02 по 02.10.2019 14:41:02

Цепочка сертификатов не проверена для следующего сертификата:

Субъект:"АКЦИОНЕРНОЕ ОБЩЕСТВО ""НАУЧНО-ПРОИЗВОДСТВЕННОЕ ОБЪЕДИНЕНИЕ РУССКИЕ БАЗОВЫЕ 
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ""", Пустовой, Виктор Иванович, "АКЦИОНЕРНОЕ 
ОБЩЕСТВО ""НАУЧНО-ПРОИЗВОДСТВЕННОЕ ОБЪЕДИНЕНИЕ РУССКИЕ БАЗОВЫЕ 
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ""", Генеральный директор, Москва, 77 г. 
Москва, RU, шоссе Варшавское д. 26, 5087746137023, 007726604816, 
13407634844, mail@rusbitech.ru

Действителен с 02.10.2018 14:31:02 по 02.10.2019 14:41:02

Ошибка: Цепочка сертификатов не проверена для следующего сертификата (код ошибки 10000):
/dailybuilds/CSPbuild/CSP/samples/CPCrypt/Certs.cpp:396: 0x20000133
Вы хотите использовать этот сертификат (Да[Y], Нет[N], Отмена[C])? С

...

$ /opt/cprocsp/bin/amd64/cptools

Вход в ЕСИА

Для доступа к Госуслугам был использован Рутокен ЭЦП 2, «КриптоПро 4.0 R3», IFCP-plugin 3.0.3

IFCP-plugin позволит Вам авторизоваться и изменять данные на нескольких сайтах:

Список сайтов ЕСИА использующий IFCP-plugin

Установка и настройка

Для аутентификации через ЕСИА esia.gosuslugi.ru следует:

1) Скачать Рутокен плагин с оффициального сайта: https://www.rutoken.ru/support/download/rutoken-plugin/

Image Removed

2) Скачать IFCP-плагин с сайта ГосУслуг в формате «deb» — файл IFCPlugin-x86_64.debhttps://ds-plugin.gosuslugi.ru/plugin/upload/Index.spr

Image Removed

3) Установить плагин:

$ sudo dpkg -i IFCPlugin-x86_64.deb

Image Removed

3) Для правильной работы плагина, следует прописать символические ссылки:

Для браузера Chromium:
sudo ln -s /etc/opt/chrome/native-messaging-hosts/ru.rtlabs.ifcplugin.json /etc/chromium/native-messaging-hosts

Для браузера Mozilla Firefox:

sudo ln -s /opt/cprocsp/lib/amd64/libcppkcs11.so.4.0.4 /usr/lib/mozilla/plugins/lib/libcppkcs11.so

Примечание:  libcppkcs11.so.4.0.Х может отличаться, в зависимости от версии КриптоПро CSP.

4) Добавить в конфигурационный файл IFCplugin /etc/ifc.cfg :

Code Block
  { name  = "Актив руТокен ЭЦП";
    alias = "ruTokenECP";
    type  = "pkcs11";
	alg   = "gost2001";
    lib_linux = "librtpkcs11ecp.so";
  },

  { name  = "CryptoPro CSP";
    alias = "cryptoprocsp";
    type  = "pkcs11";
    alg = "gost2001";
    lib_linux = "/opt/cprocsp/lib/amd64/libcppkcs11.so";
  }

...

Для ifc pluginа версии 3.0.4.0 - 3.0.6.0 в конфигурационный файл следует добавить:

Code Block
log = {
    level = "DEBUG";
}

config = {
    cert_from_registry = "false";
    set_user_pin = "false";
}

params =
(
    {
        name = "CPPKCS11_2001";
        alias = "CPPKCS11_2001";
        type = "pkcs11";
        alg = "gost2001";
        model = "CPPKCS 3";
        lib_linux = "libcppkcs11.so";
    },
    {
        name = "CPPKCS11_2012_256";
        alias = "CPPKCS11_2012_256";
        type = "pkcs11";
        alg = "gost2012_256";
        model = "CPPKCS 3";
        lib_linux = "libcppkcs11.so";
    },
    {
        name = "CPPKCS11_2012_512";
        alias = "CPPKCS11_2012_512";
        type = "pkcs11";
        alg = "gost2012_512";
        model = "CPPKCS 3";
        lib_linux = "libcppkcs11.so";
    }
);


4б) В КриптоПро CSP для корректной работы pkcs11, настройку слотов следует сделать явной:

Для этого в конфигурационный файл /etc/opt/cprocsp/config64.ini следует в разделе PKCS11 добавить:

Code Block
# [PKCS11\slot0]
# ProvGOST = "Crypto-Pro GOST R 34.10-2001 KC1 CSP"
# ProvRSA = "Microsoft Strong Cryptographic Provider"
# reader = hdimage


[PKCS11\slot17]
ProvGOST = "Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider"
Firefox = 1
Reader = ""

5) Для проверки работы плагина, в терминале в режиме live можно просмотреть логи:

tail -f /var/log/ifc/engine_logs/engine.log

6) Для авторизации следует пройти по адресу: esia.gosuslugi.ru и выбрать Вход с помощью электронной подписи

Image Removed

7) Подключив токен, следует нажать кнопку "Готово", после чего система предложит выбрать нужный сертификат ключа проверки ЭЦП:

Image Removed

Вход на сайт главного портала ГосЗакупок

Image Removed

Успешный вход на сайт zakupki.gov.ru гарантирован, при выполнении всех пунктов инструкции по установке сертификатов, который был описан выше.

Перейдя на сайт zakupki.gov.ru, следует кликнуть мышкой по иконке "Личного кабинета" и выбрать необходимый метод входа:

Image Removed

После чего система уведомит Вас, о том что для работы необходимо установить и настроить ПО "КриптоПро CSP":

Image Removed

Нажав кнопку "Продолжить работу с сайтом", система предложит выбрать нужный сертификат:

Image Removed

Выбрать сертификат и ввести pin-код.

Вход на сайт Минфин России

1) Для авторизации на сайте Минфина России, следует перейти на  страницу авторизации

Image Removed

2) Скачать и установить корнейвой сертификат УЦ "Минфина России:

$ curl http://ssl.budgetplan.minfin.ru/CAMinfin.cer|/opt/cprocsp/bin/amd64/certmgr -inst -store mRoot -stdin

3) Кликнуть по ссылке Вход по сертификату и выбрать нужный сертификат:

Image Removed

4) После чего система попросит Вас ввести пароль:

Image Removed

Удаление КриптоПро CSP

...

Для того, чтобы удалить ПО КриптоПро CSP,  в терминале FLY следует ввести команду:

# apt-get remove lsb-cprocsp-base

...

Note

На данный момент завершается сертификация обновленной версии КриптоПро CSP 4.0 R4.  Для наиболее безболезненного продолжения работы с ГОСТ Р 34.10-2001 в 2019 году мы рекомендуем обновиться до этой версии. В более ранних версиях КриптоПро CSP, а также Клиент HSM 2.0 присутствуют технические ограничения формирования подписи по ГОСТ Р 34.10-2001 после 1 января 2019 года в виде соответствующих предупреждающих окон.



Полезные ссылки

...

КриптоПро: IFCP plugin для входа ЕСИА (Госуслуги)

КриптоПро: IFCP plugin для входа ЕСИА (Госуслуги)

КриптоПро CADES ЭЦП Browser plug-in

КриптоПро CADES ЭЦП Browser plug-in

Таблица поддерживаемых устройств Крипто-Про CSP

На официальном сайте СКЗИ КриптоПро в таблице указаны носители, продемонстрировавшие работоспособность с соответствующими версиями КриптоПро CSP:

https://www.cryptopro.ru/products/csp/compare

База знаний КриптоПро

https://support.cryptopro.ru/index.php?/Knowledgebase/List

Обсуждение КриптоПро CSP на форуме astralinux

...

https://forum.astralinux.ru/threads/419/

Chromium+КриптоПРО

https://www.cryptopro.ru/news/2018/12/zashchishchennyi-brauzer-dlya-gosudarstvennykh-elektronnykh-ploshchadok-teper-i-na-linu

https://astralinux.ru/news/category-news/2018/brauzeryi-%C2%ABastra-linux-special-edition%C2%BB-adaptirovanyi-dlya-rabotyi/

Список ГИС и ЭТП использующих cades-bes plugin

ЭЦП в государственных информационных системах и электронно торговых площадках

Перечень аккредитованных удостоверяющих центров

https://e-trust.gosuslugi.ru/CA/


Диагностический архив для обращения в тех. поддержку

...

По всем вопросам установки СКЗИ в операционную систему, их настройки и обеспечения доступа к электронным ресурсам в сети Интернет можно обращаться в техническую поддержку Astra Linux и КриптоПро.

...