Пакет ccid не установлен линукс

Обновлено: 05.07.2024


Хранение ключей на токенах и смарт-картах обеспечивает дополнительную защиту от внешних и внутренних нарушителей, в том числе имеющих определенный уровень доступа к информационной системе и оборудованию.

Сегодня я расскажу, как мы защищаем ключи шифрования и электронной подписи в наших информационных системах, и сделаю это в подробном, хорошо проиллюстрированном руководстве по настройке SUSE Linux Enterprise Server 12 SP3 для работы с токеном Aladdin JaCarta PKI и КриптоПро CSP KC2 4.0.9944.

Опубликовать данное руководство побудило несколько причин:

Причина 1

Официальная документация на Aladdin-RD JaCarta больше адаптирована под операционные системы Astra Linux и ALT Linux, сертифицированные в Минобороны, ФСТЭК и ФСБ как средства защиты информации.

Причина 2

Причина 3

UPD 16.04.2019: В процессе настройки среды и оборудования выяснилось, что носитель, первым оказавшийся в распоряжении, был вовсе не JaCarta PKI Nano, как ожидалось, а устройство работающее в режиме SafeNet Authentication Client eToken PRO.

UPD 16.04.2019: Некогда Банку требовалось устройство, которое могло бы работать в той же инфраструктуре, что и eToken PRO (Java). В качестве такого устройства компания “ЗАО Аладдин Р.Д.” предложила токен JaCarta PRO, который был выбран банком. Однако на этапе формирования артикула и отгрузочных документов сотрудником компании была допущена ошибка. Вместо модели JaCarta PRO в артикул и отгрузочные документы случайно вписали JaCarta PKI.

UPD 16.04.2019: Благодарю компанию Аладдин Р.Д., за то что помогли разобраться и установить истину.

В этой ошибке нет никаких политических и скрытых смыслов, а только техническая ошибка сотрудника при подготовке документов. Токен JaCarta PRO является продуктом компании ЗАО “Аладдин Р.Д.”. Апплет, выполняющий функциональную часть, разработан компанией “ЗАО Аладдин Р.Д”.

Этот eToken PRO относился к партии, выпущенной до 1 декабря 2017 года.
После этой даты компания «Аладдин Р.Д.» прекратила продажу устройств eToken PRO (Java).

Забегая немного вперед, нужно сказать, что работа с ним настраивалась через соответствующие драйверы — SafenetAuthenticationClient-10.0.32-0.x86_64, которые можно получить только в поддержке Аладдин Р.Д. по отдельной online заявке.

В КриптоПро CSP для работы с этим токеном требовалось установить пакет cprocsp-rdr-emv-64 | EMV/Gemalto support module.

Данный токен определялся и откликался. При помощи утилиты SACTools из пакета SafenetAuthenticationClient можно было выполнить его инициализацию. Но при работе с СКЗИ он вел себя крайне странно и непредсказуемо.

Проявлялось это следующим образом, на команду:


Выдавался ответ, что все хорошо:


Но сразу после попытки зачитать ключи программно эта же проверка начинала выдавать ошибку:


Согласно перечню кодов ошибок объектной модели компонентов Microsoft COM Error Codes (Security and Setup)

В таком состоянии токен блокировался. СКЗИ начинало показывать неактуальное состояние считывателя и ключевого контейнера. Перезапуск службы криптографического провайдера cprocsp, службы работы с токенами и смарт-картами pcscd и всей операционной системы не помогали, только повторная инициализация.

Справедливости ради требуется отметить, что SafeNet eToken PRO корректно работал с ключами ГОСТ Р 34.10-2001 в ОС Windows 7 и 10.

Можно было бы попробовать установить СКЗИ КриптоПро CSP 4.0 ФКН (Gemalto), но целевая задача — защитить наши ключи ЭП и шифрования с помощью сертифицированных ФСБ и ФСТЭК изделий семейства JaCarta, в которых поддерживаются новые стандарты.

Проблему удалось решить, взяв настоящий токен JaCarta PKI в (XL) обычном корпусе.

Но на попытки заставить работать Safenet eToken PRO времени было потрачено немало. Хотелось обратить на это внимание и, возможно, кого-то оградить от подобного.

Причина 4

Иногда самому требуется вернуться к старым статьям и инструкциям. Это удобно, когда информация размещена во внешнем источнике. Так что спасибо Хабру за предоставленную возможность.

Руководство по настройке

После установки токена JaCarta PKI в USB порт сервера и запуска системы проверяем, что новое устройство обнаружено и появилось в списке:


В нашем случае это Bus 004 Device 003: ID 24dc:0101


Пока не установлены все необходимые пакеты, информация о токене не отобразится.

Установка драйверов и ПО для работы с JaCarta PKI

Согласно Руководству по внедрению «JaCarta для Linux» пункт 4.2., первым делом требуется установить пакеты pcsc-lite, ccid и libusb.

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

  • PC/SC Lite — промежуточный слой для обеспечения доступа к смарт-картам по стандарту PC/SC, пакет pcsc-lite.
  • Библиотеки ccid и libusb для работы с USB-ключами, смарт-картами и считывателями смарт-карт.

Выполняем проверку наличия этих пакетов и установку:

zypper search pcsc-lite

zypper search libusb


zypper install pcsc-lite



zypper search CCID


zypper install pcsc-ccid


zypper search CCID


zypper install libusb


В итоге пакет pcsc-lite был обновлен, CCID установлен, libusb никаких действия не требовалось.

Следующими двумя командами выполняем установку пакета с драйверами и программным обеспечением непосредственно для работы с JaCarta PKI:

zypper install idprotectclientlib-637.03-0.x86_64.rpm


zypper install idprotectclient-637.03-0.x86_64.rpm


Проверяем, что драйверы и ПО для JaCarta PKI установились:

zypper search idprotectclient


При попытках заставить работать SafeNet eToken PRO я нашел информацию, что предустановленный в SLES пакет openct — Library for Smart Card Readers может конфликтовать с pcsc-lite — PCSC Smart Cards Library, установку которого требует руководство Аладдин Р.Д.

zypper search openct


Поэтому пакет openct удаляем:

Теперь все необходимые драйверы и ПО для работы с токеном установлены.

Выполняем диагностику с помощью утилиты pcsc-tools и убеждаемся, что JaCarta определяется в операционной системе:


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

При установке КриптоПро CSP по умолчанию нужные пакеты для работы с токенами и смарт-картами отсутствуют.

zypper search cprocsp


Выполняем установку в CSP компонента поддержки JaCarta components for CryptoPro CSP

zypper install cprocsp-rdr-jacarta-64-3.6.408.683-4.x86_64.rpm



Устанавливаем базовые пакеты поддержки считывателей и ключевых носителей:

zypper install cprocsp-rdr-pcsc-64-4.0.9944-5.x86_64.rpm


zypper install lsb-cprocsp-pkcs11-64-4.0.9944-5.x86_64.rpm

Теперь можно установить модули для работы с остальными видами носителей и компонент GUI:

zypper install cprocsp-rdr-emv-64-4.0.9944-5.x86_64.rpm




Проверяем итоговую конфигурацию КриптоПро CSP:

S | Name | Summary | Type
---+-----------------------------+----------------------------------------------------+--------
i+ | cprocsp-curl-64 | CryptoPro Curl shared library and binaris. Build 9944. | package
i+ | cprocsp-rdr-emv-64 | EMV/Gemalto support module | package
i+ | cprocsp-rdr-gui-gtk-64 | GUI components for CryptoPro CSP readers. Build 9944. | package
i+ | cprocsp-rdr-jacarta-64 | JaCarta components for CryptoPro CSP. Build 683. | package
i+ | cprocsp-rdr-mskey-64 | Mskey support module | package
i+ | cprocsp-rdr-novacard-64 | Novacard support module | package
i+ | cprocsp-rdr-pcsc-64 | PC/SC components for CryptoPro CSP readers. Build 9944.| package
i+ | lsb-cprocsp-base | CryptoPro CSP directories and scripts. Build 9944. | package
i+ | lsb-cprocsp-ca-certs | CA certificates. Build 9944. | package
i+ | lsb-cprocsp-capilite-64 | CryptoAPI lite. Build 9944. | package
i+ | lsb-cprocsp-kc2-64 | CryptoPro CSP KC2. Build 9944. | package
i+ | lsb-cprocsp-pkcs11-64 | CryptoPro PKCS11. Build 9944. | package
i+ | lsb-cprocsp-rdr-64 | CryptoPro CSP readers. Build 9944. | package


Чтобы применить изменения, выполняем перезапуск службы криптографического провайдера и проверяем ее статус:



Настройка и диагностика КриптоПро CSP

Проверим, видит ли криптографический провайдер наш токен и другие доступные типы носителей следующими командами:

/opt/cprocsp/bin/amd64/csptest -card -enum -v –v


/opt/cprocsp/bin/amd64/csptest -enum -info -type PP_ENUMREADERS | iconv -f cp1251


/opt/cprocsp/sbin/amd64/cpconfig -hardware reader -view -f cp1251


Aladdin R.D. JaCarta [SCR Interface] (000000000000) 00 00 — это наш носитель.

Следуя инструкции КриптоПро CSP для Linux. Настройка, выполняем его регистрацию в криптографическом провайдере:



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

Пакет ccid не установлен линукс (000000000000) 00 00"\Default]

Чтобы выполнить требования Формуляра, Правил пользования и Руководства администратора безопасности КриптоПро CSP:

Использование СКЗИ «КриптоПро CSP» версии 4.0 с выключенным режимом усиленного контроля использования ключей не допускается. Включение данного режима описано в документах ЖТЯИ.00087-01 91 02. Руководство администратора безопасности.

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


Проверяем, что режим включен:

cat /etc/opt/cprocsp/config64.ini | grep StrengthenedKeyUsageControl


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


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

/opt/cprocsp/bin/amd64/csptest -keyset –verifycontext


/opt/cprocsp/bin/amd64/csptest -keyset -verifycontext -enum –unique

Работа с токеном JaCarta PKI

Запустим программу Xming (X11 forwarding) на своей станции, чтобы по SSH иметь возможность открывать и работать с графическими интерфейсами нужных утилит.


После установки IDProtectClient — программного обеспечения для работы с JaCarta PKI, на сервере в папке /usr/share/applications появились два файла:

Это ярлыки, в которых можно посмотреть параметры запуска утилит Exec=/usr/bin/SACTools

Запустим утилиту IDProtectPINTool.

С помощью нее задаются и меняются PIN-коды доступа к токену.


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

Программа IDProtect_Manager позволяет просматривать информацию о токене и контейнере с ключами и сертификатом:


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



Для работы с SafeNet Authentication Client eToken PRO существуют аналогичные программы — SafeNet Authentication Client Monitor и SafeNet Authentication Client Tools, которые запускаются так:



Выполнять операции непосредственно с ключевыми контейнерами удобнее в интерфейсе криптографического провайдера КриптоПро JavaCSP:


Для отображения информации о содержимом контейнера с ключами можно выполнить команду:


Для диагностики контейнера используется эта же команда с ключом –check


Потребуется ввести пароль от контейнера:



Программное извлечение ключей

В общем виде пример извлечения закрытого ключа и сертификата открытого ключа из контейнера на токене с помощью КриптоПро Java CSP следующий:

Если действовать так:


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

Результаты

Отторгаемый ключевой носитель-токен установлен во внутренний USB-порт сервера.

Само серверное оборудование опломбировано и размещается в помещении с ограниченным доступом.

Такие меры позволяют повысить уровень защиты наших информационных систем от кражи и компрометации ключей электронной подписи или шифрования, как удаленно по сети, так и физически.


Рутокен S– модель для надежного хранения контейнеров ГОСТ-криптопровайдеров: КриптоПро, VipNet и других. Сертифицированы во ФСТЭК.

Рутокен Lite – модель для надежного хранения контейнеров ГОСТ-криптопровайдеров: КриптоПро, VipNet и других. Сертифицированы во ФСТЭК. Обладает интерфейсом CCID и не требует установки дополнительных драйверов

Рутокен ЭЦП 2.0 – имеет встроенный криптопровайдер и высокую производительность. Формирует квалифицированную электронную подпись (КЭП) при помощи сертифицированной реализации российских криптографических алгоритмов непосредственно в самом чипе устройстве, что повышает безопасность использования ЭП — ключ подписи никогда не покидает токен, его невозможно использовать или скопировать без ведома владельца. Работает с алгоритмами ГОСТ 2012. Сертифицированы в ФСБ и ФСТЭК.

Широко используется в системе ЕГАИС с 2016 года. В активном пользовании более полумиллиона устройств с квалифицированной электронной подписью.

Тестирование электронной подписи в Astra Linux:
Кроме двухфакторной аутентификации, можно проверять также подписание документов.

Для Рутокен Lite/S подписание проверить через:

1) КриптоАРМ eSign или КриптоАРМ ГОСТ
2) Утилиту csptestf из состава КриптоПро CSP. Подробно в разделе на Подпись средствами «КриптоПро CSP»

Для Рутокен ЭЦП 2.0 подписание можно проверить несколькими способами:

Рутокен для Байкала и Эльбруса

Рутокен Lite и Рутокен ЭЦП одинаково хорошо работают на всех платформах, где есть USB-интерфейс.
Сейчас для Эльбруса и Байкала Рутокены подписывают через программы:
1) Тестовый центр регистрации Рутокен + Рутокен Плагин
2) Утилита из КриптоПро CSP 5.0

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

  • библиотека libccid, librtpkcs11ecp.so;
  • пакеты libpcsclite1 и pcscd;
  • opensc;

Для установки в терминале введите команду:

Для проверки работы Рутокена:
Подключите устройство к компьютеру.

Способ №1

Способ №2

путь до библиотеки librtpkcs11ecp.so может различаться

Для того чтобы определить путь до библиотеки librtpkcs11ecp.so введите команду:

Способ №3

графическая утилита XCA:

Проверка

Чтобы проверить наличие сертификатов и ключевых пар на Рутокене введите команду:

В результате в окне терминала отобразится информация обо всех сертификатах и ключевых парах, хранящихся на Рутокене:

Если после строчки выводится информация о ключах и сертификатах, то необходимо считать сертификат:

Извлечение сертификата из токена

вместо нужно подставить ID который вы увидите в выводе команды

Если после строчки

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

Создание самоподписанного сертификата

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

pkcs11-tool --module /usr/lib/librtpkcs11ecp .so --label "название_ключа" --keypairgen --key- type rsa:2048 -l -- id 45

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

OpenSSL> engine dynamic -pre SO_PATH:/usr/lib/x86_64-linux-gnu/engines-1.1/pkcs11.so -pre ID:pkcs11 -pre LIST_ADD:1 -pre LOAD -pre MODULE_PATH:/usr/lib/librtpkcs11ecp.so

(dynamic) Dynamic engine loading support
[Success]: SO_PATH:/usr/lib/x86_64-linux-gnu/engines-1.1/pkcs11.so
[Success]: ID:pkcs11
[Success]: LIST_ADD:1
[Success]: LOAD
[Success]: MODULE_PATH:/usr/lib/librtpkcs11ecp.so
Loaded: (pkcs11) pkcs11 engine

В Astra Linux SE 1.6 pkcs11 libengine-pkcs11-openssl версии 1.0.2 не совместим с библиотекой librtpkcs11ecp.so. Для корректного функционирования, следует скачать и установить п одписанный пакет libengine-pkcs11-openssl1.1 версии 0.4.4-4 для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6): libengine-pkcs11-openssl1.1_0.4.4-4_amd64.deb

OpenSSL> req -engine pkcs11 -new -key 0:45 -keyform engine -x509 -out название_вашего_сертификата.crt -outform DER

1) Путь до библиотеки pkcs11.so может отличаться

Для того чтобы определить путь до библиотеки pkcs11.so введите команду:

2) Т.к. вышеуказанные команды должны быть неразрывны, их следует обязательно вводить в консоли openssl Иначе openssl не сможет обратиться к закрытому ключу.

Загрузка сертификата на токен

Создав свой личный сертификат, его следует загрузить на рутокен:

Using slot 0 with a present token (0x0)
Public Key Object; RSA 2048 bits
label: название_ключа
ID: 45
Usage: encrypt, verify, wrap
Certificate Object, type = X.509 cert
label: имя_сертификата_в_токене
ID: 45

Установка дополнительный пакетов

Пуск - Настройки - Менеджер пакетов

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

  • libccid
  • pcscd
  • libpam-p11
  • libpam-pkcs11
  • libp11-2
  • libengine-pkcs11-openssl
  • opensc

Либо воспользовавшись терминалом FLY:

Конвертируем сертификат в текстовый формат

где cert.pem - Ваш сертификат из токена в текстовом формате

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

Для привязки токена к определенному пользователю необходимо указать его домашнюю директорию, например таким образом:

Важно помнить, что при регистрации нескольких токенов на одном компьютере, необходимо указывать пользователям раличные id.

Настройка аутентификации

Пуск - утилиты - Терминал Fly

sudo nano /usr/share/pam-configs/p11

записываем в файл следующую информацию:

Name: Pam_p11
Default: yes
Priority: 800
Auth-Type: Primary
Auth: sufficient pam_p11_opensc.so /usr/lib/librtpkcs11ecp .so

сохраняем файл, нажав Alt + X, а затем Y, после чего выполнить команду:

в появившемся окне отметить пункт Pam_p11 и нажать OK

Проверка

Пуск - утилиты - Терминал Fly

Блокировка компьютера при извлечении токена

Для настройки pkcs11_eventmgr служит файл конфигурации - /etc/pam_pkcs11/pkcs11_eventmgr.conf

Пример файла конфигурации представлен ниже:

После этого добавьте приложение pkcs11_eventmgr в автозагрузку и перезагрузитесь.

Инициализация утилитой pkcs11-tool:

$ pkcs11-tool --slot 0 --init-token --so-pin '87654321' --label 'Название_Вашего_токена' --module /usr/lib/librtpkcs11ecp.so

Также для очистки всех данных воспользуйтесь командами:

pkcs15-init --erase-card
pkcs15-init --create-pkcs15 --so-pin "87654321" --so-puk ""
pkcs15-init --store-pin --label 'User PIN' --auth-id 02 --pin '12345678' --puk '' --so-pin '87654321' --finalize

Утилита rtAdmin предназначена для автоматизации процедур форматирования и администрирования устройств Рутокен: смены метки токена, PIN-кодов и их параметров, управления разделами Flash-памяти.

При работе с утилитой рекомендуется не подключать более одного устройства.

Поддерживаемые модели

  • Рутокен Lite
  • Рутокен Lite SC
  • Рутокен ЭЦП
  • Рутокен ЭЦП 2.0
  • Рутокен ЭЦП SC
  • Рутокен ЭЦП PKI
  • Рутокен ЭЦП Flash
  • Рутокен ЭЦП 2.0 Flash/touch
  • Рутокен PINPad

Ссылки на загрузку:

Примеры использования

Отформатировать один токен с параметрами по умолчанию (для поточного выполнения убрать флаг -q)

Отформатировать токен, задав имя токена RutokenLabel , PIN-код пользователя 123456789 и PIN-код администратора 987654321 .

./rtadmin -f -z /usr/lib/librtpkcs11ecp.so -L RutokenAstra -u 123456789 -a 98765432
1 -q

Параметры

Утилита запускается из командной строки и имеет следующие параметры:

Значение по умолчанию используется только при форматировании без указания параметра -o

Значение по умолчанию используется только при форматировании без указания параметра -c

Значение по умолчанию используется только при форматировании без указания параметра -a

Значение по умолчанию используется только при форматировании без указания параметра -u

(для Рутокен PINPad. Устанавливается на экране устройства)

Политика смены PIN-кода пользователя

-p [кто может менять PIN-код:
1 – администратор,
2 – пользователь,
3 – пользователь и администратор]

Минимальная длина PIN-кода администратора

-M [длина PIN-кода (6-31 для Рутокен ЭЦП и Рутокен Lite,
1 для Рутокен S)]

Минимальная длина PIN-кода пользователя

-m [длина PIN-кода (6-31 для Рутокен ЭЦП и Рутокен Lite, 1 для Рутокен S)]

Максимальное количество попыток ввода PIN-кода администратора

Максимальное количество попыток ввода PIN-кода пользователя

Путь: каталог, в котором лежит утилита
Имя файла: rtadmin.log

При возникновении вопроса, на который вам не удалось найти ответ в этой инструкции, рекомендуем
обратиться к следующим дополнительным источникам информации:

Веб-сайт содержит большой объем справочной информации об устройствах Рутокен.

Выполните предварительно команды в терминале под суперпользователем:

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

sudo apt-get update

Для обновления всех установленных пакетов программ:

sudo apt-get upgrade



Скачанные пакеты необходимо разархивировать:

После при помощи команды установить пакеты:

sudo sh install_gui.sh

При котором откроется терминал с возможностью установки через GUI.


Лучше поставить пакеты вручную:

sudo dpkg -i lsb-cprocsp-devel_4.0.0-5_all.deb

sudo dpkg -i cprocsp-curl-64_4.0.0-4_amd64.deb

sudo apt-get install libpangox-1.0-dev

sudo dpkg -i cprocsp-rdr-gui-gtk-64_4.0.0-4_amd64.deb

sudo dpkg -i cprocsp-rdr-rutoken-64_4.0.0-4_amd64.deb

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

sudo dpkg -i lsb-cprocsp-base_4.0.0-4_all.deb

sudo dpkg -i lsb-cprocsp-capilite-64_4.0.0-4_amd64.deb

Для того чтобы установить драйверы Рутокен для Linux(Ubuntu), загрузите установочный файл. После завершения процесса установки подключите Рутокен к компьютеру.



2.1 Произвести установку в систему.

Для deb-based систем (Debian, Ubuntu, Linux Mint и др.) это библиотека libccid не ниже 1.3.11, пакеты pcscd и libpcsclite1. Для установки указанных пакетов запустите терминал и выполните команду:

sudo apt-get install libccid pcscd libpcsclite1

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

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

Информация по установке

В редких случаях если не определяется Рутокен в утилите администрирования, необходимо перезагрузить систему, после данных манипуляций Рутокен должен определиться в системе.

Для обеспечения работоспособности электронных идентификаторов Рутокен ЭЦП ряде дистрибутивов GNU/Linux, может потребоваться добавить запись об устройстве в конфигурационный файл libccid. Расположение Info.plist в файловой системе:

GNU/Linux: /usr/lib/pcsc/drivers/ifd-ccid-bundle/Contents/Info.plist

Info.plist представляет собой текстовый файл, который открывается любым текстовым редактором с правами суперпользователя.

Для работы электронных идентификаторов Рутокен ЭЦП необходимо добавить в файл следующие строки (данные строки стандартно уже прописаны в Linux(Ubuntu), необходимо проверить есть ли такие данные, если нет то прописать):

Массив () Добавленная строка

ifdFriendlyName Aktiv Rutoken ECP


Установите утилиту pcsc_scan (обычно она входит в пакет pcsc-tools) и запустите ее. Если устройство работает корректно, то в логе утилиты присутствует устройство Aktiv Rutoken ECP:

sudo apt-get install pcsc-tools

3. Программа КриптоПро ЭЦП Browser plug-in предназначена для создания и проверки электронной подписи на веб-страницах. Чтобы установить КриптоПро ЭЦП Browser plug-in:


3.2 Разархивируйте пакеты с помощью команды:

3.3 Установить пакеты с помощью соответствующей команды:

Информация по возможным проблемам:

Если во время установки возникнут проблемы или ошибки, то выполнить: dpkg --force-overwrite -i <имя пакета>.deb

Проблема возникала с данным ниже пакетом, устраняется вводом команды в терминал:

dpkg --force-overwrite -i cprocsp-pki-cades_2.0.0_amd64.deb

Установить пакет alien:

sudo apt-get install alien

sudo alien -kci cprocsp-pki-2.0.0-amd64-cades.rpm

sudo alien -kci cprocsp-pki-2.0.0-amd64-plugin.rpm

При необходимости, раздать права на пакеты через команды в терминале:

sudo chmod 777 <имя пакета>.deb

Для пакетов установки:

sudo chmod 777 cprocsp-pki-2.0.0-amd64-cades.deb

sudo chmod 777 cprocsp-pki-2.0.0-amd64-plugin.deb

3.4 Также необходимо выполнить:

sudo dpkg -i cprocsp-pki-2.0.0-amd64-cades.deb

sudo dpkg -i cprocsp-pki-2.0.0-amd64-plugin.deb

Сертификат лучше получить через терминал вручную, так как поддержки ActiveX нет в UNIX

/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -fqcn -verifyc

sudo /opt/cprocsp/bin/amd64/csptest -keyset -newkeyset -provtype 80 -cont '\\.\HDIMAGE\Test'

sudo /opt/cprocsp/bin/amd64/certmgr -inst -store uRoot -file certnew.p7b


4.1 Нажать кнопку выдать и необходимо чтобы Рутокен был подключен к устройству на которое выдается ключ и сертификат.

Выбрать устройство Рутокен:


Набрать Pin-код на устройство Рутокен, стандартные пароли к контейнеру 87654321 или 12345678.


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




5. Проверка работы плагина в браузере


Google Chrome Версия 61.0.3163.79 (Официальная сборка), (64 бит)


6. При подписывании в системе РМИС, выходит окно с подтверждением и с выбором сертификата:

6.1 Необходимо выбрать сертификат и нажать кн. Подписать.


6.2 Выйдет уведомление о успешном подписании: Выполнено! Отчет успешно подписан.

Где возможно через кнопку Загрузить, загрузить выбранный подписанный документ.



Файл протокола, который подписан возможно проверить через средства приложения VipNet CryptoFile (Windows) , нажать в приложении Открыть выбрать открыть подписанный файл в формате .pdf и выбрать протокол в формате .sig пример:


6.3 Сформировать отчет: Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider

По информации разработчика, с ALT Linux совместимы следующие продукты КриптоПро:

  • КриптоПро CSP
  • КриптоПро JCP
  • КриптоПро HSM
  • КриптоПро TSP
  • КриптоПро OCSP
  • КриптоПро ЭЦП Browser plug-in
  • КриптоПро SSF
  • КриптоПро Stunnel
  • Браузер КриптоПро Fox
Примечание: В репозитории доступен пакет firefox-gost , аналогичный КриптоПро Fox, с патчем от КриптоПро.

Архив с программным обеспечением (КриптоПро CSP 4.0 R4 — сертифицированная версия, КриптоПро CSP 5.0 — несертифицированная) можно загрузить после предварительной регистрации:

Загрузка КриптоПро

Внимание! По умолчанию при скачивании с сайта КриптоПро выдаётся лицензия на три месяца

1. Установите пакет cryptopro-preinstall :

Этот пакет установит все требуемое для КриптоПро (включая инфраструктуру поддержки карт Рутокен S и Рутокен ЭЦП). Примечание: Пакет cryptopro-preinstall вытягивает зависимости libpangox-compat , opensc , pcsc-lite , pcsc-lite-rutokens , pcsc-lite-ccid , newt52 .


2. Распакуйте архив, скачанный с официального сайта КриптоПро:

Таблица 1. Описание необходимых пакетов КриптоПро.

Пакет Описание
Базовые пакеты:
cprocsp-curl Библиотека libcurl с реализацией шифрования по ГОСТ
lsb-cprocsp-base Основной пакет КриптоПро CSP
lsb-cprocsp-capilite Интерфейс CAPILite и утилиты
lsb-cprocsp-kc1 Провайдер криптографической службы KC1
lsb-cprocsp-kc2 Провайдер криптографической службы KC2 (требует наличия аппаратного датчика случайных чисел или гаммы)
lsb-cprocsp-rdr Поддержка ридеров и RNG
Дополнительные пакеты:
cprocsp-cptools-gtk Инструменты КриптоПро - кроссплатформенный графический интерфейс
cprocsp-rdr-gui-gtk Графический интерфейс для диалоговых операций
cprocsp-rdr-rutoken Поддержка карт Рутокен
cprocsp-rdr-jacarta Поддержка карт JaCarta
cprocsp-rdr-pcsc Компоненты PC/SC для ридеров КриптоПро CSP
lsb-cprocsp-pkcs11 Поддержка PKCS11
ifd-rutokens Конфигурация Рутокеновских карт (или можно взять pcsc-lite-rutokens из репозитория)

3. Установите пакеты КриптоПро:

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

Примечание: Для 32-битной версии вместо последнего пакета — lsb-cprocsp-rdr-4*
  • установите пакеты для поддержки токенов (Рутокен S и Рутокен ЭЦП):
Примечание: Если возникнут проблемы с отображением контейнеров на Рутокен S — удалите pcsc-lite-openct
  • установите пакет для поддержки токенов (JaCarta):
Примечание: Для установки cprocsp-rdr-jacarta может понадобиться предварительно удалить openct .
  • Для установки сертификатов Главного удостоверяющего центра:

Также можно выполнить установку КриптоПро, запустив ./install_gui.sh в распакованном каталоге и выбрав необходимые модули:

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

Примечания:

  • Для КриптоПро CSP 3.6 R2 потребуется установить пакет cprocsp-compat-altlinux-1.0.0-1.noarch.rpm
  • Для установки cprocsp-rdr-gui может понадобиться libXm.so.3 ( libopenmotif3 ) и для вывода кириллицы fonts-bitmap-cyr_rfx-iso8859-5 .
  • Для установки cprocsp-rdr-gui-gtk потребуется предварительно установить libpangox-compat .
  • В версии 4.0.0-alt5 пакета cryptopro-preinstall добавлены подпакеты:
    • cryptopro-preinstall-base для установки с cprocsp-compat-altlinux , «предоставляющим» lsb (в случае нежелательности «лишних» зависимостей вроде libqt3 ), и
    • cryptopro-preinstall-full для автоустановки зависимостей cprocsp-rdr-gui .
    Внимание! Пакеты КриптоПро после обновления утрачивают работоспособность, так что рекомендуется удалить все пакеты и установить их заново.

    Для обновления КриптоПро необходимо:

      Запомнить текущую конфигурацию: набор установленных пакетов:

    Утилиты КриптоПро расположены в директориях /opt/cprocsp/sbin/<название_архитектуры> и /opt/cprocsp/bin/<название_архитектуры> .

    Чтобы каждый раз не вводить полный путь к утилитам КриптоПро:

    • после установки пакета cryptopro-preinstall начните новый сеанс пользователя в консоли;
    Примечание: Не работает для суперпользователя.
    • выполните от имени пользователя, который будет запускать команды (будет действовать до закрытия терминала):
    Внимание! Если установлен пакет mono или mono4-devel , может быть конфликт по имени утилиты certmgr

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

    Примечание: Для версии КриптоПро CSP под Linux все лицензии считаются серверными, поэтому не смущайтесь строкой «License type: Server».


    Для установки другой лицензии выполните (под root):

    Примечание: Серийный номер следует вводить с соблюдением регистра символов.

    Проверить версию КриптоПро можно командой:

    Настройка устройств хранения (носителей) и считывания (считывателей) ключевой информации и датчиков случайных чисел.

    Примечание: Если не работает под обычным пользователем, то проверить правила polkit.

    Считыватели (readers) — устройства, предназначенные для чтения ключей. К считывателям относится считыватели дискет (FAT12), считыватели флеш-накопителей (FLASH), считыватели смарт-карт и токенов, считыватель образа дискеты на жестком диске (HDIMAGE) и др.

    Ключевые носители (media) являются местом хранения электронной подписи. В качестве носителя ключевой информации могут использоваться: защищенный флэш-накопитель (токен) (Рутокен, JaCarta, ESMART и др.), смарт-карта, флэш-накопитель, дискета.

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

    Встроенный в «КриптоПро CSP» датчик случайных чисел (далее ДСЧ) используется для генерации ключей.

    Для смарт-карт: ключи дополнительно защищаются кодом доступа к защищенной памяти смарт-карты (PIN). При всех операциях с защищенной памятью (чтение, запись, удаление. ) требуется вводить PIN. Для других носителей: для повышения безопасности на контейнер можно установить пароль. В этом случае всё содержимое контейнера хранится не в открытом виде, а в зашифрованном на этом пароле. Пароль задается при создании контейнера, в дальнейшем для чтения ключей из контейнера необходимо будет вводить пароль.

    Примечание: Подробнее про работе с разными ключевыми носителями: Рутокен, JaCarta, ESMART

    Просмотр доступных (настроенных) считывателей:

    Инициализация считывателя HDIMAGE, если его нет в списке доступных считывателей (под правами root):

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

    Для работы со считывателем PC/SC требуется пакет cprocsp-rdr-pcsc. После подключения считывателя можно просмотреть список видимых считывателей (не зависимо от того, настроены ли они в КриптоПро как считыватели, зависит только от того, какие установлены драйверы для считывателей):

    Инициализация считывателя Aktiv Co. Rutoken S 00 00 (требуется, если считыватель есть в списке видимых считывателей и отсутствует в списке настроенных), в параметре -add указывается имя, которое было получено при просмотре видимых считывателей, в параметре -name — удобное для обращения к считывателю имя, например, Rutoken (под правами root):

    Современные аппаратные и программно-аппаратные хранилища ключей, такие как Рутокен ЭЦП или eSmart ГОСТ, поддерживаются через интерфейс PCSC. За реализацию этого интерфейса отвечает служба pcscd , которую необходимо запустить перед началом работы с соответствующими устройствами:

    Читайте также: