Содержание

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 26 Next »

#lsb_release  -a
Distributor ID: AstraLinux
Description:    Astra Linux  2.12 (Orel)
Release:        2.12
Codename:       orel

1) Установка КриптоПро CSP


1) Скачаем архив с сертифицированной версией ПО «КриптоПро» «4.0 R3» по адресу: https://www.cryptopro.ru/products/csp/downloads#latest_csp40r3_linux

Название полученного файла должно быть: «linux-amd64_deb.tgz».

2) Откроем терминал.

3) Перейдем в терминале в папку «Загрузки» с помощью команды:

cd /home/u/Загрузки

4) Разархивируем скаченный архив в терминале командой:

tar -zxf linux-amd64_deb.tgz

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

cd /linux-amd64_deb

sudo ./install_gui.sh


Прописывание путей к исполняемым файлам

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

 

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

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

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

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

в) Распаковать архив 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.



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

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



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



  • Браузер Microsoft Internet Explorer: 

  • не требуется дополнительных настроек.


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

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



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


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

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

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

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

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

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

Заходим на страницу https://www.cryptopro.ru/sites/default/files/products/cades/demopage/simple.html и нажимаем получить, выполняем все всплывающие требования. Сертификат получен.


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


4 категории сертификатов:

Они делятся на четыре категории:

* личные сертификаты (ставятся в хранилище umy, где u = User, my - имя хранилища) - как правило для них есть закрытый ключ (и они требуют особой установки, чтобы в хранилище появилась ссылка на этот закрытый ключ). В результате с их использованием можно, например, подписать файл.

* корневые сертификаты - краеугольнй камень безопасности, так как цепочки доверия строятся от них, то их надо добавлять в хранилища осознанно и внимательно (ставятся в uroot, также администратор может поставить их в mroot, где m = Machine, такие сертификаты будут видны в read only в root-хранилищах всех пользователей)

* промежуточные сертификаты - появляются, когда есть промежуточные УЦ (головной -> промежуточный -> пользовательский). Прямое доверие к ним не требуется (ставятся в uca, также администратор может поставить их в mca). В это же хранилище ставятся CRL-и. Обычно точки получения промежуточных сертификатов и CRL-ей правильно указаны в пользовательских сертификатах, поэтому они автоматом выкачиваются и попадают в хранилище ucache. В общем про них можно ничего особо не знать и ничего не делать.

* сертификаты партнёров по общению, чтобы проверять их подписи и зашифровывать для них сообщения. Ставятся либо в umy (это беспорядок, но популярный), либо в uAddressBook



Установка сертификата клиента:
$ /opt/cprocsp/bin/amd64/csptestf -absorb -cert -pattern 'rutoken'

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

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

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


В случае, если рабочая станция не имеет доступа к сети, следует stdin заменить на -file /tmp/ca.cer и -file /tmp/ca.crl


Примечание:

1)Имена хранилищ указаны в формате  certmgr, у cryptcp похожий формат: -mroot и -uAddressBook

2) Из под учетной записи пользователя ставится в uca, из под учетной записи администратора ставить в mca:


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

certmgr -delete 1 (номер сертификата)

certmgr -del -all (удаление всех сертификатов)


Экспорт сертификатов на другую машину

Закрытые ключи к сертификатам находятся тут: /var/opt/cprocsp/keys.

Поэтому эти ключи переносятся просто: создаем архив и переносим на нужную машину в тот же каталог.

/opt/cprocsp/bin/amd64/certmgr -export -dest cert.cer


Переносим эти файлы на машину и смотрим, какие контейнеры есть:

csptest -keyset -enum_cont -verifycontext -fqcn

И как обычно, связываем сертификат и закрытый ключ:

certmgr -inst -file 1.cer -cont '\\.\HDIMAGE\container.name'

Если закрытый ключ и сертификат не подходят друг к другу, будет выведена ошибка:

Can not install certificate
Public keys in certificate and container are not identical


4) Подписание документа ЭЦП

Подпись можно делать двумя способами:

* attached (присоединённая), тогда результирующий файл - это CMS-сообщение, внутрь которого упакованы данные и атрубуты (типа подписи). Формат сообщения соответствует международному стандарту, поэтому извлекать данные оттуда можно любыми утилитами, типа cryptcp / csptest / openssl / certutil (на windows).

* detached (отсоединённая), тогда результирующий файл - это CMS-сообщение БЕЗ исходных данных, но с атрибутами (типа подписи). В этом случае для проверки надо "принести" исходный файл. Разумеется он остаётся неизменным и его можно смотреть cat-ом


Про CMS-сообщения, есть хорошая статья на Хабре


Подпись файлов:

shuhrat@smakhmadiev:~/smolensk$ /opt/cprocsp/bin/amd64/cryptcp -sign -detach -pin 12345678 smolensk16.iso smolensk16.iso.sig
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.
Утилита командной строки для подписи и шифрования файлов.

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

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

Цепочки сертификатов проверены.
Папка './':
smolensk16.iso... Подпись данных...    
    
Подписанное сообщение успешно создано.
[ErrorCode: 0x00000000]

Проверка подписи в файле:

1)  обучающий:

указать в качестве хранилища сертификатов само сообщение (ключ -f):


/opt/cprocsp/bin/amd64/cryptcp -verify -verall -detached /home/shuhrat/smolensk/smolensk16.iso smolensk16.iso.sig 
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.
Утилита командной строки для подписи и шифрования файлов.
Папка '/home/shuhrat/smolensk/':
/home/shuhrat/smolensk/smolensk16.iso... Проверка подписи...     
    
Автор
 подписи: "АКЦИОНЕРНОЕ ОБЩЕСТВО ""НАУЧНО-ПРОИЗВОДСТВЕННОЕ ОБЪЕДИНЕНИЕ РУССКИЕ БАЗОВЫЕ 
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ""", Москва, 77 г. 
Москва, RU, шоссе Варшавское д. 26, mail@rusbitech.ru
Действителен с 02.10.2018 14:31:02 по 02.10.2019 14:41:02
Действителен с 02.10.2018 14:31:02 по 02.10.2019 14:41:02

Цепочки сертификатов проверены.
Папка './':
smolensk16.iso... Проверка подписи... 

 Подпись проверена.
[ErrorCode: 0x00000000]

2) естественный:

использовать ключ -verall - он понимает, что надо найти всех подписавших и ищет в том числе в сообщении:


/opt/cprocsp/bin/amd64/cryptcp -verify -f smolensk16.iso.sig -detached smolensk16.iso smolensk16.iso.sig 
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2018.
Утилита командной строки для подписи и шифрования файлов.

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

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

 Подпись проверена.
[ErrorCode: 0x00000000]


Графический интерфейс КриптоПро CSP v. 5.0 (cptools)

В версии КриптоПРО 5 появилась графическая утилита для работы с сертификатами - cptools.

её можно запустить из консоли:

$ cptools

либо

$ /opt/cprocsp/bin/amd64/cptools


Вход в ЕСИА


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

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

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

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

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

$ sudo dpkg -i IFCPlugin-x86_64.deb

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 :


Unknown macro: { name = "Актив руТокен ЭЦП"; alias = "ruTokenECP"; type = "pkcs11"; alg = "gost2001"; lib_win = "rtpkcs11ecp.dll"; lib_linux = "librtpkcs11ecp.so"; lib_mac = "librtpkcs11ecp.dylib"; }

,

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


Примечание:

Для старых версий плагина (< 3.0.0) необходимо добавить в файл /etc/ifc.cfg после раздела с Jacarta (для 64-битных систем):

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



1. Установите пакет cryptopro-preinstall
# apt-get install cryptopro-preinstall
2. Скачать rpm пакет crypto pro с сайта (я писал инструкцию по 5 версии)
в распакованной папке:
# apt-get install cprocsp-curl* lsb-cprocsp-base* lsb-cprocsp-capilite* lsb-cprocsp-kc1* lsb-cprocsp-rdr-64* cprocsp-cptools-gtk*

для sberbank-ast.ru и zakupki.gov.ru необходима поддержка токенов (не знаю зачем, но без него не появлялся выбор сертификата при входе):
# apt-get install cprocsp-rdr-gui-gtk* cprocsp-rdr-rutoken* cprocsp-rdr-pcsc* lsb-cprocsp-pkcs11* pcsc-lite-rutokens pcsc-lite-ccid

3. $ export PATH="$(/bin/ls -d /opt/cprocsp/{s,}bin/*|tr '\n' ':')$PATH" (без введения этой команды команды типа "csptest" или "certmgr " (и т.д.) водить соответственно /opt/cprocsp/bin/amd64/csptest /opt/cprocsp/bin/amd64/certmgr )
4. Скачать сертификаты http://zakupki.gov.ru/epz/main/public/document/view.h.., я их скачал в папку /home/user/video/, переименовал в 1.cer и 2.cer 3.cer.
5. копирование контейнеров с флешки (или 5.1 или 5.2)
5.1. $ cptools (от обычного пользователя)
нажимаем копировать нужный контейнер с флешки, затем нужно открыть окно консоли и продолжать копирование там, следую инструкции.
5.2. просто копируем папки с флешки по адресу /var/opt/cprocsp/keys/имя_пользователя
7. csptest -keyset -enum_cont -fqcn -verifyc | iconv -f cp1251 здесь вы увидите список контейнеров нужен приблизительно "\\.\HDIMAGE\r_copy"
8. certmgr -inst -file "/home/user/video/r.cer" -store uMy -cont '\\.\HDIMAGE\r_copy'
где
- /home/user/video/r.cer путь и имя сертификата пользователя ЕИС.
-\\.\HDIMAGE\r_copy п.7.
9. просмотр установленных сертификатов "certmgr -list"
10. устанавливаем сертификаты удостоверяющих центров.
установка
# certmgr -inst -store uRoot -file /home/user/video/1.cer
# certmgr -inst -store uRoot -file /home/user/video/2.cer
# certmgr -inst -store uRoot -file /home/user/video/3.cer
https://www.altlinux.org/КриптоПро
установка от обычного пользователя, я смог установить только от su от чего это зависит я не знаю)

11. Скачиваем https://github.com/deemru/chromium-gost
# apt-get install chromium-gost
на 06.08.2018 только этот браузер зашел на сайт закупок.
на sberbank-ast.ru зашел с браузеров Google Chrome, firefox gost, chromium, даже с Epiphany, на возможно зайти с firefox 59 версии и старше

12. скачиваем http://www.cryptopro.ru/products/cades/plugin/get_2_0 плагин браузер.
настраиваем по инструкции https://www.altlinux.org/КриптоПро для своего браузера.
по ссылке https://www.cryptopro.ru/sites/default/files/products.. проверяем верно ли установился плагин. должна появиться подпись.









  • No labels