Криптопровайдер КриптоПро CSP предназначен для:
https://www.cryptopro.ru/products/csp
Для ОС AstraLinux следует загрузить пакет:
К моменту написания статьи, была использована сертифицированная версия ПО «КриптоПро» «4.0 R3».
1) Загрузка архива с сертифицированной версией ПО «КриптоПро» «4.0 R3»:
2) Открыть «Терминал Fly» (alt+T)
tar -zxf linux-amd64_deb.tgz
cd /linux-amd64_deb
sudo ./install_gui.sh
Содержание
- 1
Описание необходимых пакетов КриптоПро
- 2
Прописывание путей к исполняемым файлам
- 3
Установка дополнительных пакетов с модулем поддержки для токена
- 4
Создание локального носителя
- 5
Проверка подписи в файле
- 6
Список сайтов ЕСИА использующий IFCP-plugin
- 7
Таблица поддерживаемых устройств Крипто-Про CSP
- 8
Диагностический архив для обращения в тех. поддержку
Описание необходимых пакетов КриптоПро
dpkg -l | grep cprocsp
Прописывание путей к исполняемым файлам
Установка дополнительных пакетов с модулем поддержки для токена
библиотека libccid, libgost-astra , пакеты pcscd, libpcsclite1
Рутокен: https://www.rutoken.ru/support/download/rutoken-for-cp/
После установки пакетов с модулем поддержки токена следует перезагрузить службу pcscd:
Проверить срок истечения лицензии можно командой:
Для установки другой лицензии следует выполнить команду :
a)Установить пакет alien, необходимый для конвертации rpm-пакетов в deb-формат
б) Загрузить архив cades_linux_amd64.zip
в) Распаковать архив cades_linux_amd64.zip перейти в каталог с распакованными файлами и выполнить команды:
alien -dc cprocsp-pki-2.0.0-amd64-plugin.rpm
dpkg -i cprocsp-pki-cades_2.0.0-2_amd64.deb cprocsp-pki-plugin_2.0.0-2_amd64.deb
-
Браузер Chrome
д) Тестовый сайт предложит Вам подписать документ и выбрать нужный Вам сертификат.
Открываем эмулятор терминала и выполняем от root`а:
Перезапускаем браузер.
Альтернативный метод получения тестового сертификата
2) Для получение сертификата, перейдите в раздел Сформировать ключи и отправить запрос на сертификат
6) Тестовый УЦ КриптоПро уведомит нас о том, что сертификат выдан
7) Пройти по ссылке и установить сертификат, введя пароль контейнера.
Для запроса, получения и установки сертификата с тестового УЦ «КриптоПро» — можно, воспользоваться одной командой:cryptcp -creatcert -rdn ’E=email@astralinux.ru, CN=имя_сертификата’ -cont ’\.HDIMAGEимя_контейнера’ -hashalg 1.2.643.7.1.1.2.2
Чтобы узнать модель подключенного токена, следует ввести команду:
После чего система выдаст информацию о подключенном устройстве:
Проверить наличие носителей с контейнерами можно с помощью команды:/opt/cprocsp/bin/amd64/csptest -keyset -verifycontext -enum -unique
В этом случае будет выведен список носителей с контейнерами в следующем формате:
Где \.HDIMAGE — локальный носитель, \.HDIMAGETestCont123 — название контейнера, \.Aktiv Rutoken ECP 00 00 — название носителя (токена).
Создание локального носителя
sudo /opt/cprocsp/sbin/amd64/cpconfig -hardware reader -add HDIMAGE store
Для создания контейнера в носителе HDIMAGE следует воспользоваться командой:
Для добавления контейнера в носитель токена следует воспользоваться командой:
В 5-ой версии КриптоПРО CSP v.5.0, для создания контейнера, имя носителя можно не указывать, а выбрать в интерактивном gtk-диалоге:
Для просмотра подробной информации о контейнерах воспользуйтесь командой:
Проверка работы контейнера
/opt/cprocsp/bin/amd64/csptestf -keyset -container ИМЯ -check
Для удаления контейнера следует воспользоваться командой:
Копирование контейнера
csptestf -keycopy -contsrc ’\.HDIMAGEКонтейнер_оригинал’ -contdest ’\.Aktiv Rutoken ECP 00 00Контейнер_копия’
Для создания запроса на получение сертификата для контейнера ’\.Aktiv Rutoken ECP 00 00Shuhrat’ , воспользуемся командой:
Для примера можно воспользоваться тестовым удостоверяющим центром КриптоПро. Нам нужен пункт « Отправить готовый запрос PKCS#10 или PKCS#7 в кодировке Base64 «. На следующей странице в поле «Сохраненный запрос» вставляем содержимое файла cert.req и нажимаем кнопку «Выдать».
/opt/cprocsp/bin/amd64/certmgr -inst -file имя_полученного_сертификата.cer -cont ’\.Aktiv Rutoken ECP 00 00Shuhrat’
/opt/cprocsp/bin/amd64/csptest -keys -cont ’\.Aktiv Rutoken ECP 00 00Shuhrat’ -keyt exchange -impcert имя_полученного_сертификата.cer
4 категории сертификатов
* личные сертификаты (ставятся в хранилище umy, где u = User, my — имя хранилища) — как правило для них есть закрытый ключ (и они требуют особой установки, чтобы в хранилище появилась ссылка на этот закрытый ключ). В результате с их использованием можно, например, подписать файл.
* промежуточные сертификаты — появляются, когда есть промежуточные УЦ (головной -> промежуточный -> пользовательский). Прямое доверие к ним не требуется (ставятся в uca, также администратор может поставить их в mca). В это же хранилище ставятся CRL-и. Обычно точки получения промежуточных сертификатов и CRL-ей правильно указаны в пользовательских сертификатах, поэтому они автоматом выкачиваются и попадают в хранилище ucache. В общем про них можно ничего особо не знать и ничего не делать.
Установка
Просмотр
certmgr -list
Удаление
certmgr -delete 1 (номер сертификата)
Экспорт сертификатов на другую машину
Поэтому эти ключи переносятся просто: создаем архив и переносим на нужную машину в тот же каталог.
/opt/cprocsp/bin/amd64/certmgr -export -dest cert.cer
И как обычно, связываем сертификат и закрытый ключ:
Если закрытый ключ и сертификат не подходят друг к другу, будет выведена ошибка:
Проверка цепочки сертификатов
/opt/cprocsp/bin/amd64/cryptcp -copycert -dn CN=Имя_вашего_сертификата -df /temp/сертификат.cer
В нашем примере, из логов можно сделать вывод, что нам надо установить сертификат УЦ МО с CN=Министерство обороны Российской Федерации:
Для того, чтобы убедиться в устранении ошибки, можно повторно в режиме отладки запустить команду. При правильно установленной цепочке сертификатов, статус у сертификата будет = CERT_TRUST_NO_ERROR
* attached (присоединённая), тогда результирующий файл — это CMS-сообщение, внутрь которого упакованы данные и атрубуты (типа подписи). Формат сообщения соответствует международному стандарту, поэтому извлекать данные оттуда можно любыми утилитами, типа cryptcp / csptest / openssl / certutil (на windows).
Подпись файлов (присоединённая)
Проверка подписи в файле
Для проверки прикрепленной подписи выполните:
использовать ключ -verall — он понимает, что надо найти всех подписавших и ищет в том числе в сообщении:
указать в качестве хранилища сертификатов само сообщение (ключ -f):
Чтобы извлечь файл, необходимо указать его имя в конце команды проверки подписи:
её можно запустить из консоли:
либо
Для доступа к Госуслугам был использован Рутокен ЭЦП 2, «КриптоПро 4.0 R3», IFCP-plugin 3.0.3
Список сайтов ЕСИА использующий IFCP-plugin
Установка и настройка
1) Скачать Рутокен плагин с оффициального сайта: https://www.rutoken.ru/support/download/rutoken-plugin/
2) Скачать IFCP-плагин с сайта ГосУслуг в формате «deb» — файл IFCPlugin-x86_64.deb; https://ds-plugin.gosuslugi.ru/plugin/upload/Index.spr
3) Установить плагин:
Для браузера Chromium:sudo ln -s /etc/opt/chrome/native-messaging-hosts/ru.rtlabs.ifcplugin.json /etc/chromium/native-messaging-hosts
sudo ln -s /opt/cprocsp/lib/amd64/libcppkcs11.so.4.0.4 /usr/lib/mozilla/plugins/lib/libcppkcs11.so
4) Добавить в конфигурационный файл IFCplugin /etc/ifc.cfg :
Для этого в конфигурационный файл /etc/opt/cprocsp/config64.ini следует в разделе PKCS11 добавить:
tail -f /var/log/ifc/engine_logs/engine.log
Перейдя на сайт zakupki.gov.ru, следует кликнуть мышкой по иконке «Личного кабинета» и выбрать необходимый метод входа:
После чего система уведомит Вас, о том что для работы необходимо установить и настроить ПО «КриптоПро CSP»:
Нажав кнопку «Продолжить работу с сайтом», система предложит выбрать нужный сертификат:
Выбрать сертификат и ввести pin-код.
1) Для авторизации на сайте Минфина России, следует перейти на страницу авторизации
2) Скачать и установить корнейвой сертификат УЦ «Минфина России:
3) Кликнуть по ссылке Вход по сертификату и выбрать нужный сертификат:
4) После чего система попросит Вас ввести пароль:
В соответствии с принятым в 2014 году порядком перехода на ГОСТ Р 34.10-2012 до 1 января 2019 года попытка использования ГОСТ Р 34.10-2001 (кроме проверки подписи) на всех выпущенных к настоящему моменту сертифицированных версиях КриптоПро CSP 3.9, 4.0 и КриптоПро JCP 2.0 с 1 января 2019 года вызовет ошибку/предупреждение (в зависимости от продукта и режима работы), которые могут привести к неработоспособности автоматических/автоматизированных систем при использовании ими ключей ГОСТ Р 34.10-2001. В случае если ваша система использует ключи ГОСТ Р 34.10-2001, просим принять во внимание инструкцию.
[Parameters]
warning_time_gen_2001=ll:9223372036854775807
Таблица поддерживаемых устройств Крипто-Про CSP
https://www.cryptopro.ru/products/csp/compare
https://support.cryptopro.ru/index.php?/Knowledgebase/List
https://forum.astralinux.ru/threads/419/
https://www.cryptopro.ru/news/2018/12/zashchishchennyi-brauzer-dlya-gosudarstvennykh-elektronnykh-ploshchadok-teper-i-na-linu
Диагностический архив для обращения в тех. поддержку
Для создания диагностического архива, можно воспользоваться следующей командой:
В результате должен получится cprodiag_день_месяц_год.tar.gz архив, который следует прислать в техническую поддержку Astra Linux и КриптоПро.
Источник