Данная статья применима к:

  • Astra Linux Common Edition 2.12.42

Подготовка установки

Перед установкой КриптоПро CSP и Карма:

  1. Обновить ОС (предполагается, что все репозитории пакетов настроены):

    sudo apt update
    sudo apt dist-upgrade

  2. Установить необходимую библиотеку libmicrohttpd12:

    sudo apt install libmicrohttpd12

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

Инструкцию по установке КриптоПро CSP см. в статье Работа с КриптоПро CSP, раздел «Установка».

Установка Карма

Для того чтобы установить Карма:

  1. Создать временный каталог и сделать его текущим:

    pushd `mktemp -d`

  2. Скачать архив по ссылке: https://www.eos.ru/upload/karma/karma560219.zip. Это можно сделать командами:

    sudo apt install ca-certificates
    wget https://www.eos.ru/upload/karma/karma560219.zip

    Версия Карма может быть повышена. При установке новой версии заменить в командах имена архива и пакетов на соответствующие.

  3. Распаковать полученный архив командой: 

    unzip karma*.zip

  4. Установить пакеты командой:

    sudo dpkg -i Linux/carma-common_*-astra_amd64.deb Linux/carma-dev_*-astra_amd64.deb Linux/carma-capilite_*-astra_amd64.deb

  5. После завершения установки можно удалить содержимое временного каталога, в любом случае оно будет автоматически удалено при перезагрузке.

  6. Запустить меню : Пуск — Прочие — Карма .

Программа запустится в фоновом режиме и появится в трее.

Настройка PATH

Для дальнейшей работы добавить в путь поиска исполняемых файлов каталоги Карма:

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

Вся дальнейшая настройка и работа должны происходить в терминальной сессии, в которой в переменную PATH добавлены каталоги Карма.

Локальное хранилище

Создание локального хранилища

Cоздание локального хранилища выполняются от имени суперпользователя. Добавить локальное хранилище HDIMAGE:

sudo -E cpconfig -hardware reader -add HDIMAGE store


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

Создать контейнер с именем test в локальном хранилище HDIMAGE:

csptest -keyset -provtype 80 -newkeyset -cont '\\.\HDIMAGE\test'

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


Откроется следующее окно:


По запросу ввести пароль для контейнера или оставить это поле пустым, нажать OK .

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

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

csptest -keyset -enum_containers -fqcn -verifycontext -unique


Для удаления контейнера test выполнить:

Для дальнейших действий по инструкции не удалять!

csptest -keyset -deletekeyset -cont '\\.\HDIMAGE\test'

Установка сертификата

Создание запроса на получение сертификата

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

cryptcp -creatrqst -dn "cn=test,e=test@eos.ru" -provtype 80 -nokeygen -cont '\\.\HDIMAGE\test' -certusage "1.3.6.1.5.5.7.3.4,1.3.6.1.4.1.311.10.3.12" eos.req
где:

  • cn=test,e=test@eos.ru — данные, которые будут храниться в поле Subject сертификата:
  • CN наименование субъекта (владельца) сертификата, для личности — это ФИО;
  • E (email) — адрес электронной почты субъекта (владельца) сертификата;
  • \\.\HDIMAGE\test имя контейнера вместе со считывателем;
  • eos.req имя файла, в котором следует сохранить запрос (вместо eos можно указать любое имя файла — *.req);
  • -certusage — опция, которая указывает назначение сертификата, представляемое в сертификате объектным идентификатором, присвоенным этой политике, — OID. Если в сертификате указано несколько политик, то это означает, что сертификат соответствует всем этим политикам списка:
    • 1.3.6.1.5.5.7.3.1 — аутентификация сервера;
    • 1.3.6.1.5.5.7.3.2 — аутентификация клиента;
    • 1.3.6.1.5.5.7.3.3 — подписывание кода;
    • 1.3.6.1.5.5.7.3.4 — защищенная электронная почта;
    • 1.3.6.1.5.5.7.3.8 — проставление штампов времени;
    • 1.3.6.1.4.1.311.10.5.1 — цифровые права;
    • 1.3.6.1.4.1.311.10.3.12 — подписывание документа.

Выдача запроса на получение сертификата

Для выдачи запроса на получение сертификата или его обновление следует перейти по ссылке: https://www.cryptopro.ru/certsrv/certrqxt.asp.

Откроется окно, где в поле Сохраненный запрос вставить содержимое из файла *.req, в нашем случае — eos.req.

Содержимое копировать без комментария! Без строк

-----BEGIN NEW CERTIFICATE REQUEST-----
и
-----END NEW CERTIFICATE REQUEST-----

Нажать кнопку Выдать.

Далее загрузить файл, нажав на Загрузить цепочку сертификатов (по умолчанию предлагается имя certnew.p7b).

В этом же окне будет предложено установить расширение КриптоПро ЭЦП Browser plugin, его необходимо установить, поставив галочку Разрешить работать в приватных окнах, либо скачать самостоятельно (см. Установка ЭЦП Browser plug-in).

По ссылке https://www.cryptopro.ru/certsrv/certcarc.asp с качать последний список отзыва сертификатов (certcrl.crl):

Выбрать пункт Загрузка последнего базового CRL.

Установить скачанный certnew.p7b-сертификат клиента. При запросе ввести пароль на контейнер \\.\HDIMAGE\test .

Предполагается, что certnew.p7b находится в каталоге, где выполняется команда. В случае, если сертификат находится в другом месте, указать полный путь к сертификату.

certmgr -inst -file certnew.p7b -store uMy -cont '\\.\HDIMAGE\test' -inst_to_cont

Во время установки сертификата в консоли появится запрос Введите индекс от 1 до 2, следует в ыбрать индекс 2 .

Установка сертификата удостоверяющего центра

Установить сертификат удостоверяющего центра:

certmgr -inst -file certnew.p7b -store uRoot
Во время установки сертификата в консоли появится запрос Введите индекс от 1 до 2, следует выбрать индекс 1, во всплывшем окне нажать ОК.

Установка списка отозванных сертификатов

Установить список отозванных сертификатов (crl)

Предполагается, что certcrl.crl находится в каталоге, где выполняется команда:

certmgr -inst -crl -file certcrl.crl -store CA

Просмотр установленных сертификатов:

certmgr -list

Установка ЭЦП Browser plug-in

Для установки ЭЦП Browser plug-in пройти по ссылке: https://www.cryptopro.ru/products/cades/plugin и с качать архив в любой удобный каталог.

Р аспаковать скачанный архив cades_linux_amd64.tar.gz и перейти в распакованный каталог cades_linux_amd64:

tar -xvf cades_linux_amd64.tar.gz
cd /home/<имя_пользователя>/cades_linux_amd64

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

sudo dpkg -i *.deb

Проверка сертификата

Для проверки сертификата перейти на страницу https://www.cryptopro.ru/sites/default/files/products/cades/demopage/cades_bes_sample.html.

Нажать в появившемся окне кнопку   ОК.


В окне сертификатов выбрать появившийся сертификат.

Rutoken S и ECP

Для начала работы с Rutoken S и ECP у становить пакеты:

sudo apt install opensc pcscd
По ссылке https://www.rutoken.ru/support/download/drivers-for-nix/ скачать драйвер Rutoken S — Драйвер Рутокен S для GNU/Linux DEB 64-bit (x64).

Установка Rutoken S

Для установки Rutoken S выполнить :

sudo dpkg -i ifd-rutokens_1.0.4_amd64.deb

Работа с Rutoken S и ECP

Работа с Рутокен S и ECP аналогична, поэтому все дальнейшее описание будет на примере работы с Рутокен S.

Вставить Rutoken S в разъем USB и проверить, определяется ли он , а так же его имя :

list_pcsc
В случае ошибки типа ERROR: ScardListReaders(NULL) следует перезапустить pcscd:
sudo service pcscd restart
Открыть Пуск — Утилиты — Инструменты КриптоПро — Показать расширенные — Управление носителями. Носитель должен определиться н а вкладке Выберите считыватель.

Создать контейнер с именем eos на Rutoken S:

csptest -keyset -provtype 80 -newkeyset -cont '\\.\Aktiv Co. Rutoken S 00 00\eos'
где Aktiv Co. Rutoken S 00 00 — это имя подключенного по USB Рутокена.

В открывшемся графическом окне следует перемещать указатель мыши или нажимать клавиши для генерации случайной последовательности до завершения операции.

Во всплывающем окне ввести pin-код для контейнера (по умолчанию — 12345678), нажать OK.

В открывшемся графическом окне следует перемещать указатель мыши или нажимать клавиши для генерации случайной последовательности до завершения операции.

Запрос на получение сертификата

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

cryptcp -creatrqst -dn "cn=test ,e=test@eos.ru" -provtype 80 -nokeygen -cont '\\.\Aktiv Co. Rutoken S 00 00\eos' -certusage "1.3.6.1.5.5.7.3.4,1.3.6.1.4.1.311.10.3.12" test.req

Выдача запроса на получение сертификата осуществляется в соответствии с примечанием ниже.

Для выдачи запроса на получение сертификата и загрузки цепочки сертификатов см. Выдача запроса на получение сертификата 

В поле Сохраненный запрос вставить содержимое из файла test.req.

Так же установить по инструкции расширение КриптоПро ЭЦП Browser plugin, если это не было сделано ранее.

Установить certnew.p7b в личное хранилище Rutoken S:

certmgr -inst -file certnew.p7b -store uMy -cont '\\.\Aktiv Co. Rutoken S 00 00\eos' -inst_to_cont

Предполагается, что файл certnew.p7b находится в том же каталоге, где выполняется запрос.

Выбрать индекс 2.

Если Rutoken S был получен уже с контейнером «Crypto Pro» и полученным сертификатом, записать в хранилище сертификатов CryptoPro информацию об этом сертификате:

csptestf -absorb -cert -pattern 'rutoken'

Предполагается, что сертификат удостоверяющего центра и список отозванных сертификатов уже установлены (см. установку удостоверяющий центр и список отозванных сертификатов) .

JaCarta-2 PKI/ГОСТ

Перейти в ранее распакованный каталог с КриптоПро linux-amd64_deb:

cd /home/<имя_пользователя>/linux-amd64_deb

Установить jaCarta:

sudo dpkg -i cprocsp-rdr-jacarta-64_5.0.0.1237-4_amd64.deb
Вставить JaCarta-2 PKI/ГОСТ в разъем USB и проверить, определяется ли он, а так же его имя:
list_pcsc
Открыть: Пуск — Утилиты — Инструменты КриптоПро — Показать расширенные — Управление носителями. Носитель должен определиться на вкладке Выберите считыватель .

Создать контейнер с именем tok на JaCarta-2 PKI/ГОСТ :

csptest -keyset -provtype 80 -newkeyset -cont '\\.\Aladdin R.D. JaCarta [SCR Interface] 00 00\tok'
где Aladdin R.D. JaCarta [SCR Interface] 00 00 — это имя подключенной по USB JaCarta.

Во всплывающем окне во вкладке Вид приложения выбрать, как использовать считыватель, и  нажать ОК .


В открывшемся графическом окне следует перемещать указатель мыши или нажимать клавиши для генерации случайной последовательности.

Во всплывающем окне ввести pin-код для контейнера (по умолчанию — 11111111 ), нажать ОК.

В открывшемся графическом окне следует перемещать указатель мыши или нажимать клавиши для генерации случайной последовательности до завершения операции.

В итоге будет создан контейнер.

Запрос на получение сертификата

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

cryptcp -creatrqst -dn "cn=test ,e=test@eos.ru" -provtype 80 -nokeygen -cont '\\.\Aladdin R.D. JaCarta [SCR Interface] 00 00\tok' -certusage "1.3.6.1.5.5.7.3.4,1.3.6.1.4.1.311.10.3.12" tok.req
Во всплывающем окне ввести pin-код для контейнера (по умолчанию — 11111111 ), нажать ОК.

Выдача запроса на получение сертификата осуществляется в соответствии с примечанием ниже.

Для выдачи запроса на получение сертификата и загрузки цепочки сертификатов см. Выдача запроса на получение сертификата 

В поле Сохраненный запрос вставить содержимое из файла tok.req.

Так же установить по инструкции расширение КриптоПро ЭЦП Browser plugin, если это не было сделано ранее.

Установить certnew.p7b в личное хранилище JaCarta-2 PKI/ГОСТ:

certmgr -inst -file certnew.p7b -store uMy -cont '\\.\Aladdin R.D. JaCarta [SCR Interface] 00 00\tok' -inst_to_cont

Выбрать индекс 2.

Во всплывающем окне ввести pin-код для контейнера (по умолчанию — 11111111 ), нажать ОК.

Предполагается, что сертификат удостоверяющего центра и список отозванных сертификатов уже установлены (см. установку удостоверяющий центр и список отозванных сертификатов) .

  • No labels