Если кто-то уже ранее имел опыт установки КриптоПро на Windows, то спешу вас огорчить: дела с Linux обстоят гораздо хуже.
Почему? Дело в том, что версия КриптоПро для Linux почти лишена графической среды управления, так что даже импорт сертификатов придется выполнять консольными командами (за исключением последней 5-ой версии КриптоПро). Но если вы используете Linux, то данное обстоятельство вас не должно напугать.
Не буду ходить больше вокруг да около, а сразу приступлю к описанию процесса установки и настройки КриптоПро в Ubuntu 18.04. Все описанные далее инструкции справедливы для Rutoken Lite.
Установка КриптоПро CSP на AltLinux
КриптоПро CSP на AltLinux
Автор: Техническая Поддержка
Обновлено более недели назад
3. Выполните команду su- и введите пароль суперпользователя.
4. Выполните команду apt-get update для обновления пакетов lsb-core
5. Выполните команду apt-get upgrade для установки обновленных пакетов.
7. Выполните команду ./install_gui.sh.
8. Нажмите на кнопку .
9. Выберите все пакеты для установки, кроме lsb-cprocsp-kc2.
10. Начните установку.
11. Дождитесь окончания установки.
12. Если была приобретена лицензия отдельно, выберите и введите лицензию, указанную в бланке. Если лицензии нет, либо в сертификате есть встроенная лицензия — выберите .
13. Выберите и закройте установщик.
- cryptopro-node-cades
- Установка
- Сборка
- Использование модуля
- Назначение
- Операционные системы
- Основные характеристики
- Устанавливаем необходимые пакеты:
- Если предполагается использовать Рутокен S, устанавливаем драйвер Рутокен. Для Рутокен ЭЦП 2. 0/3. 0 этот шаг пропускаем.
- Скачиваем актуальную версию КриптоПро CSP. Может потребоваться авторизация. Далее распаковываем архив и устанавливаем компоненты КриптоПро:
- Скачиваем и устанавливаем корневой сертификат УЦ.
- Скачиваем КриптоПро ЭЦП Browser plug-in.
- Перезапускаем браузер и заходим на тестовую страницу КриптоПро CSP.
- В настройках плагинов браузера у CryptoPro CAdES plugin ставим значение Always Activate.
- Проверяем работоспособность на demo странице, либо на странице генерации тестового сертификата.
- 5 Работа с электронной подписью в РЕД ОС под Байкал-М
- Установка КриптоПро CSP 4
- Установка КриптоПро CSP 5
- Установка драйверов для токенов Рутокен
- Утилиты token-manager и gostcryptogui
- Вход по сертификату на Госуслуги в РЕД ОС под Байкал-М
- Причина 1
- Причина 2
- Причина 3
- Причина 4
- Скачиваем deb-пакет для установки КриптоПро в Ubuntu
- Импорт коренвых сертификатов в хранилище доверенных корневых сертификатов
- Установка дополнительных файлов поддержки КрптоПро
- Ввод лицензионного кода
- //multiblog67. ru/images/Ubuntu/FotoUbCrypt/018. png” alt=”Установка КриптоПро в Linux” width=”734″ height=”488″>
- Установка КриптоПро в графическом режиме
- Руководство по настройке
- Установка драйверов и ПО для работы с JaCarta PKI
- Установка пакетов КриптоПро CSP
- Настройка и диагностика КриптоПро CSP
- Работа с токеном JaCarta PKI
- Программное извлечение ключей
- Результаты
- Полезные ссылки
- Установка расширения браузера КриптоПро ЭЦП Browser plug-in
- Установка драйверов Рутокен
- Просмотр и Импорт в Личное хранилище сертификатов с Рутокена
- Доополнительное ПО для Рутокена
- Установка КриптоПро ЭЦП Browser plug-in
cryptopro-node-cades
Модуль Node.js, используемый для работы с КриптоПро библиотекой.
Данный модуль на текущий момент был протестирован только на Node.Js версии 14.17 и на операционной системе Ubuntu 20.04. Версия Node.Js должна поддерживать Node-API.
Установка
lsb-cprocsp-base
;lsb-cprocsp-rdr-64
;lsb-cprocsp-kc1-64
;lsb-cprocsp-pkcs11-64
;lsb-cprocsp-capilite-64
;lsb-cprocsp-devel
– требуется только для сборки node модуля из исходников;lsb-cprocsp-ca-certs
– корневые сертификаты и сертификаты промежуточных УЦ. Требуются для теста;
В стандартных пакетах отсутствуют некоторые файлы, которые нужно взять из архива pycades по ссылке.
Инструкия по установке pycades со всеми необходимым ссылками, указанными выше, находится по ссылке.
Саму pycades собирать не нужно!В проект cryptopro-node-cades в папку src скопировать из архива pycades:
- файл
cpstldll.h
; - каталог
cplib
;
- файл
В каталог /opt/cprocsp/include/pki/atl скопировать папку /opt/cprocsp/include/reader
Сборка
В каталоге проекта выполнить npm install
В случае успешной сборки появится файл build/Release/NodeCades.node
Использование модуля
Пример использования модуля находится в файле test/index.js.
Для его корректной работы необходимо прописать отпечаток предварительно установенного сертификата в переменной testCertificateThumbprint
Для использования модуля в других проектах достаточно скопировать файл NodeCades.node в нужный проект и подключить его директивой require(‘./NodeCades.node’);
Назначение
КриптоПро TSP Client предназначен для обращения к серверам штампов времени протоколу TSP поверх HTTP, работы с запросами на штампы и с самими штампами времени.
КриптоПро TSP Client представляет собой программный интерфейс (библиотеку) для работы со штампами времени и не имеет другого интерфейса пользователя. Поэтому КриптоПро TSP Client не имеет выделенного дистрибутива. Его установка должна производиться совместно с установкой продукта, который использует его программный интерфейс. Модули для интеграции КриптоПро TSP Client в установочный пакет другого продукта включены в инструментарий разработчика КриптоПро TSP SDK вместе с соответствующим руководством.
Операционные системы
КриптоПро TSP Client функционирует в следующих операционных системах:
- Microsoft Windows XP / 2003 / Vista / 2008 / W7 / 2008 R2 / W8 / 2012 / W8.1 / 2012 R2 / 2016 / W10,
- ОС семейства Linux, удовлетворяющих LSB 3.1 и выше,
- FreeBSD 7.x и выше,
- AIX 5.3 и 6.x,
- Apple MacOS 10.6 и выше.
Основные характеристики
КриптоПро TSP Client:
- Реализует протокол TSP поверх HTTP по RFC 3161 с учётом использования российских криптографических алгоритмов.
- Поддерживает штампы времени Microsoft, используемые в технологии
- Может настраиваться с помощью групповых политик. Список доступных политик см. в КриптоПро PKI SDK.
- Позволяет обращаться к серверу по протоколу TLS (SSL), поддерживает различные методы аутентификации и доступ через прокси.
- Совместим с серверными приложениями.
- Работает с любым криптопровайдером (CSP).
- Предоставляет интерфейсы C++ и COM. COM-интерфейс может использоваться в скриптах.
- Включает низкоуровневый интерфейс для работы с ASN.1-структурами протокола TSP и технологии .
- Устанавливается с помощью Windows Installer.
Страница для печати
Устанавливаем необходимые пакеты:
|
Если предполагается использовать Рутокен S, устанавливаем драйвер Рутокен. Для Рутокен ЭЦП 2. 0/3. 0 этот шаг пропускаем.
Скачиваем актуальную версию КриптоПро CSP. Может потребоваться авторизация. Далее распаковываем архив и устанавливаем компоненты КриптоПро:
|
Скачиваем и устанавливаем корневой сертификат УЦ.
Важно
В данном примере устанавливается корневой сертификат Тестового УЦ КриптоПро. Сертификаты, выданные данным УЦ, можно использовать только в тестовых целях.
Для нормальной работы необходимо скачать и установить корневой сертификат УЦ, который выдал ваш сертификат.
Для просмотра доступных установленных контейнеров выполняем:
|
Скачиваем КриптоПро ЭЦП Browser plug-in.
|
Для Google Chrome устанавливаем расширение CryptoPro Extension for CAdES Browser из магазина Chrome.
Перезапускаем браузер и заходим на тестовую страницу КриптоПро CSP.
Для Firefox:
- Переходим по ссылке Скачать плагин. Отобразится предложение скачать расширение.
- В отобразившемся окне выберите Продолжить установку.
- В следующем окне выберите Добавить.
- В отобразившемся окне нажмите ОК. Понятно.
В настройках плагинов браузера у CryptoPro CAdES plugin ставим значение Always Activate.
Проверяем работоспособность на demo странице, либо на странице генерации тестового сертификата.
5 Работа с электронной подписью в РЕД ОС под Байкал-М
Скачать документ
Установка КриптоПро CSP 4.0 Установка КриптоПро CSP 5.0 Установка драйверов для токенов Рутокен Утилиты token-manager и gostcryptogui Вход по сертификату на Госуслуги в РЕД ОС под Байкал-М
Работа с электронной подписью в РЕД ОС под Байкал-М (архитектура aarch64, она же arm64) аналогична работе в РЕД ОС x86_64. Но есть отличия в установке и настройке некоторых утилит.
Установка КриптоПро CSP 4
Установка КриптоПро CSP 4.0 через стандартный установщик, входящий в дистрибутив КриптоПро CSP 4.0 архитектуры arm64, невозможна. Установка завершается ошибкой:
Но установку можно выполнить через dnf, непосредственно указав перечень пакетов. Для этого:
1. Скачайте архив с сайта КриптоПро по ссылке.
2. Распакуйте архив в папку (в примере /home/test/).
cd /home/test tar -xvf linux-arm64.tgz
3. Перейдите в папку с КриптоПро:
cd /home/test/linux-arm64
4. Перейдите в сеанс пользователя root:
su -
и выполните установку пакетов КриптоПро CSP 4.0 вручную:
dnf install ./lsb-cprocsp-base* ./lsb-cprocsp-rdr* ./lsb-cprocsp-kc1* ./lsb-cprocsp-capilite* ./cprocsp-rdr-gui-gtk* ./cprocsp-rdr-pcsc* ./lsb-cprocsp-pkcs11* pcsc-lite
Установка КриптоПро CSP 5
Установка КриптоПро CSP 5.0 успешно выполняется через стандартный установщик, входящий в дистрибутив КриптоПро CSP 5.0 архитектуры arm64:
1. Скачайте архив с сайта КриптоПро по ссылке.
2. Распакуйте архив в папку (в примере /home/test/).
cd /home/test tar -xvf linux-arm64.tgz
3. Перейдите в папку с КриптоПро:
cd /home/test/linux-arm64
4. Выполните установку КриптоПро 5.0 командой:
./install_gui.sh
Установка драйверов для токенов Рутокен
Драйверы Рутокен ЭЦП для архитектуры arm64 (aarch64) доступны по ссылке:
http://download.rutoken.ru/Rutoken/PKCS11Lib/Current/Linux/ARM/aarch64/
Плагин Rutoken доступен по следующей ссылке:
http://download.rutoken.ru/Rutoken_Plugin/Current/Linux/
Установка драйвера и плагина выполняется штатно через dnf.
Утилиты token-manager и gostcryptogui
Утилиты для работы с сертификатами и электронной подписью token-manager и gostcryptogui адаптированы под архитектуру arm64 (aarch64) и успешно работают в РЕД ОС под Байкал-М с КритоПро CSP версий 4.0 и 5.0.
Вход по сертификату на Госуслуги в РЕД ОС под Байкал-М
Вход по сертификату на Госуслуги через браузеры Chromium, Спутник и другие пока не поддерживается, т.к. разработчиком еще не выпущен плагин Госуслуг (IFCPlugin) под архитектуру arm64 (aarch64): https://ds-plugin.gosuslugi.ru/plugin/upload/Index.spr
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.
Установил в системе ALTLinux 10,0, КриптоПро 5 но он не видит носитель ЭЦП Aktiv Rutoken lite, хотя он есть.
lsb-cprocsp-kc1-64-5.0.12000-6.x86_64cprocsp-cptools-gtk-64-5.0.12000-6.x86_64lsb-cprocsp-pkcs11-64-5.0.12000-6.x86_64lsb-cprocsp-base-5.0.12000-6.noarchcprocsp-rdr-gui-gtk-64-5.0.12000-6.x86_64cprocsp-rdr-pcsc-64-5.0.12000-6.x86_64cprocsp-curl-64-5.0.12000-6.x86_64lsb-cprocsp-rdr-64-5.0.12000-6.x86_64А КриптоПро его не видит:
« Последнее редактирование: 26.05.2022 14:22:18 от ruslandh »
Установить необходимый минимум пакетов КриптоПро.
biff Оставлено | |
Ubuntu 22.04 Код:
Установка Browser plugin Код:
Если игнорировать rdr_gui_gtk – тоже падает Код:
Отредактировано пользователем 21 февраля 2022 г. 15:52:36(UTC) | |
Александр Лавник Оставлено | |
Здравствуйте. Не игнорируйте, установите нужный пакет. | |
nickm оставлено 21.02.2022(UTC) | |
biff Оставлено | |
Как его установить? Кем он предоставляется? Код:
| |
Александр Лавник Оставлено | |
Автор: biff Как его установить? Кем он предоставляется? Код:
В составе дистрибутива КриптоПро CSP. В Вашем случае: Код:
| |
biff Оставлено | |
Нда, лучше бы вы его устанавливали по умолчанию, чем заставлять пользователей самим искать пакеты в куче дистрибутивах КриптоПро продуктов | |
Александр Лавник Оставлено | |
Автор: biff Нда, лучше бы вы его устанавливали по умолчанию, чем заставлять пользователей самим искать пакеты в куче дистрибутивах КриптоПро продуктов А Вы устанавливайте через скрипт install_gui.sh с выбором всех опций кроме KC2, тогда таких проблем не возникнет. | |
Андрей * оставлено 21.02.2022(UTC), nickm оставлено 21.02.2022(UTC) | |
Хранение ключей на токенах и смарт-картах обеспечивает дополнительную защиту от внешних и внутренних нарушителей, в том числе имеющих определенный уровень доступа к информационной системе и оборудованию.
Сегодня я расскажу, как мы защищаем ключи шифрования и электронной подписи в наших информационных системах, и сделаю это в подробном, хорошо проиллюстрированном руководстве по настройке SUSE Linux Enterprise Server 12 SP3 для работы с токеном Aladdin JaCarta PKI и КриптоПро CSP KC2 4.0.9944.
Опубликовать данное руководство побудило несколько причин:
Причина 1
Официальная документация на Aladdin-RD JaCarta больше адаптирована под операционные системы Astra Linux и ALT Linux, сертифицированные в Минобороны, ФСТЭК и ФСБ как средства защиты информации.
Причина 2
Лучшая инструкция по настройке взаимодействия с аппаратными носителями в Linux, которую удалось найти, была также от wiki.astralinux.ru — Работа с КриптоПро CSP
Причина 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 можно было выполнить его инициализацию. Но при работе с СКЗИ он вел себя крайне странно и непредсказуемо.
Проявлялось это следующим образом, на команду:
csptest -keyset -cont '\\.\Aladdin R.D. JaCarta [SCR Interface] (205D325E5842) 00 00\alfa_shark' -check
Выдавался ответ, что все хорошо:
[ErrorCode: 0x00000000]
Но сразу после попытки зачитать ключи программно эта же проверка начинала выдавать ошибку:
[ErrorCode: 0x8009001a]
Согласно перечню кодов ошибок объектной модели компонентов Microsoft COM Error Codes (Security and Setup)
NTE_KEYSET_ENTRY_BAD
0x8009001A
Keyset as registered is invalid.
«Невалидный набор ключей» — причина такого сообщения, возможно, кроется либо в старом чипе, прошивке и апплете Gemalto, либо в их драйверах для ОС, которые не поддерживают новые стандарты формирования ЭП и функции хэширования ГОСТ Р 34.10-2012 и ГОСТ Р 34.11-2012.
В таком состоянии токен блокировался. СКЗИ начинало показывать неактуальное состояние считывателя и ключевого контейнера. Перезапуск службы криптографического провайдера cprocsp, службы работы с токенами и смарт-картами pcscd и всей операционной системы не помогали, только повторная инициализация.
Справедливости ради требуется отметить, что SafeNet eToken PRO корректно работал с ключами ГОСТ Р 34.10-2001 в ОС Windows 7 и 10.
Можно было бы попробовать установить СКЗИ КриптоПро CSP 4.0 ФКН (Gemalto), но целевая задача — защитить наши ключи ЭП и шифрования с помощью сертифицированных ФСБ и ФСТЭК изделий семейства JaCarta, в которых поддерживаются новые стандарты.
Проблему удалось решить, взяв настоящий токен JaCarta PKI в (XL) обычном корпусе.
Но на попытки заставить работать Safenet eToken PRO времени было потрачено немало. Хотелось обратить на это внимание и, возможно, кого-то оградить от подобного.
Причина 4
Иногда самому требуется вернуться к старым статьям и инструкциям. Это удобно, когда информация размещена во внешнем источнике. Так что спасибо Хабру за предоставленную возможность.
Форум КриптоПро
»
Средства криптографической защиты информации
»
Linux, Solaris etc.
»
CryptoPro ECP browser plug-in requires rdr_gui_gtk package from CryptoPro CSP
Николай О. Оставлено | |
Здравсвуйте! sudo dpkg -i cprocsp-pki-plugin-64_2.0.14368-1_amd64.deb получаю ошибку: Цитата: (Reading database … 210067 files and directories currently installed.) И где взять rdr_gui_gtk ? | |
Александр Лавник Оставлено | |
Автор: Николай О. Здравсвуйте! sudo dpkg -i cprocsp-pki-plugin-64_2.0.14368-1_amd64.deb получаю ошибку: Цитата: (Reading database … 210067 files and directories currently installed.) И где взять rdr_gui_gtk ? Здравствуйте. Пакет cprocsp-rdr-gui-gtk… нужно взять из состава используемого дистрибутива КриптоПро CSP. | |
Denis Sidorenko Оставлено | |
Здравствуйте! Аналогичная проблема, в дистрибутиве не произошло установки rdr_gui_gtk. Как вы решили проблему? Код:
Далее Код:
Отредактировано пользователем 8 февраля 2022 г. 20:47:45(UTC) | |
kislenko-artem-artem Оставлено | |
Думаю, что проблема в том, что устанавливается пакет cprocsp-rdr-gui-gtk-64 А ищется пакет cprocsp-rdr-gui-gtk | |
kislenko-artem-artem Оставлено | |
В итоге сделал просто apt install ./cprocsp-pki-plugin-64_2.0.14458-1_amd64.deb – все заработало | |
Форум КриптоПро
»
Общие вопросы
»
Общие вопросы
»
Проблема с установкой сертификата на CSP4 выпущенного с помощью CSP5.
polkiloo Оставлено | |
Выпустил тестовый сертификат через https://www.cryptopro.ru/certsrv/certrqma.asp на win10 c установленным csp5. и CryptoPro CSP ver. 4.0.0.0.9963. возникает следующая ошибка: Error while importing pfx The object identifier is poorly formatted. | |
Александр Лавник Оставлено | |
Автор: polkiloo Выпустил тестовый сертификат через https://www.cryptopro.ru/certsrv/certrqma.asp на win10 c установленным csp5. и CryptoPro CSP ver. 4.0.0.0.9963. возникает следующая ошибка: Error while importing pfx The object identifier is poorly formatted. Здравствуйте. RSA пакет из состава дистрибутива КриптоПро CSP 4.0 установлен? | |
polkiloo Оставлено | |
Да, пакет установлен: Код:
| |
polkiloo Оставлено | |
Параметры сертификат: Код:
Отредактировано пользователем 26 мая 2021 г. 10:14:09(UTC) | |
Александр Лавник Оставлено | |
Автор: polkiloo Параметры сертификат: Код:
Здравствуйте. КриптоПро CSP 4.0 не поддерживает провайдер Crypto-Pro Enhanced RSA and AES CSP. Какая у Вас конечная цель? | |
polkiloo Оставлено | |
Нужен сертификат для использования с алгоритмом RS256 и RS512. | |
Александр Лавник Оставлено | |
Автор: polkiloo Нужен сертификат для использования с алгоритмом RS256 и RS512. Здравствуйте. Если не хотите переходить на CSP 5.0 на Ubuntu, то попробуйте использовать криптопровайдер Crypto-Pro RSA CSP. | |
polkiloo Оставлено | |
Обнаружилась новая проблема при генерации ключевой пары. Код:
| |
Александр Лавник Оставлено | |
Автор: polkiloo Обнаружилась новая проблема при генерации ключевой пары. Код:
Если нет графики (например, работаете через ssh), то удалите пакет cprocsp-rdr-gui-gtk-64 и попробуйте еще раз. | |
polkiloo Оставлено | |
Зачем тогда нужен параметр silent? | |
Александр Лавник Оставлено | |
Автор: polkiloo Зачем тогда нужен параметр silent? Здравствуйте. Если у Вас нет аппаратного датчика случайных чисел или гаммы для генерации ключа, то флаг -silent тут явно лишний. Да, для Crypto-Pro RSA CSP нет поддержки sha 256. | |
Скачиваем deb-пакет для установки КриптоПро в Ubuntu
Загрузка доступна с официального сайта КриптоПро в разделе Продукты. Отмечу лишь то, что надо скачивать обязательно сертифицированную версию. В данном материале описана установка и настройка КриптоПро CSP 4.0 R3.
Далее загруженный архив tgz необходимо распаковать.
Импорт коренвых сертификатов в хранилище доверенных корневых сертификатов
Вначале скопируем кореные сертификаты в отдельную папку. Затем в контекстном меню, перейдя в эту папку, выполним команду Открыть в терминале. Далее произведем установку командой в Теримнале:
sudo /opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file “uc_tensor_44-2017.cer”
sudo /opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file “uc_tensor-2018_gost2012.cer”
sudo /opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file “uc_tensor-2017.cer”
Установка дополнительных файлов поддержки КрптоПро
Если установка КриптоПро запущена не в графическом режиме или при установке выбраны не все компоненты, то следует в обязательном порядке установить следующие пакеты (найти их можно в папке установки КриптоПро с файломinstall_gui.sh):
cprocsp-rdr-pcsc-64_4.0.0-4_amd64.deb
cprocsp-rdr-rutoken-64_4.0.0-4_amd64.deb
ifd-rutokens_1.0.1_amd64.deb
cprocsp-rdr-gui-gtk-64_4.0.0-4_amd64.deb
Ввод лицензионного кода
Далее мастер предложит ввести код лицензии. Делать это не обязательно. По умолчанию КриптоПро включает стандартную лицензию на три месяца. Проверить срок действия лицензии можно стандартной командой в Терминале
/opt/cprocsp/sbin/amd64/cpconfig -license -view
//multiblog67. ru/images/Ubuntu/FotoUbCrypt/018. png” alt=”Установка КриптоПро в Linux” width=”734″ height=”488″>
Для удаления сертификата из личного хранилища сертификатов следует выполнить команду в Терминале:
/opt/cprocsp/bin/amd64/certmgr -delete -store umy
Далее терминал предложит указать номер удаляемого сертификата.
На скриншоте выше вы видите, что удостоверяющим центром, который выпустил мой сертификат, является ООО “Компания Тензор”. Вот для этой компании и надо искать и устанавливать корневые сертификаты. Как установить корневые сертификаты, читайте в следующем пункте.
Установка КриптоПро в графическом режиме
Переходим в папку с распакованным архивом и выбираем в контекстном меню команду Открыть в Терминале (в Kubuntu Действия / Открыть Терминал в этой папке). Для запуска установки в КриптоПро в графическом режиме вводим в терминале команду
sudo ./install_gui.sh
Появится Мастер установки КриптоПро. Навигация в мастере установки осуществляется при помощи клавиши Tab, выбор чекбоксов осуществляется нажатием пробела. Жмем Next, отмечаем все доступные к установке компоненты, далее жмем Install.
В окне Терминала запустится процесс установки, следует проконтролировать отсутствие ошибок установки. В конце мастер сообщит об успешной установке, после чего следует нажать клавишу ОК.
Кратко о компонентах КриптоПро для Linux:
cprocsp-curl – Библиотека libcurl с реализацией шифрования по ГОСТ
lsb-cprocsp-base – Основной пакет КриптоПро CSP
lsb-cprocsp-capilite – Интерфейс CAPILite и утилиты
lsb-cprocsp-kc1 – Провайдер криптографической службы KC1
lsb-cprocsp-rdr – Поддержка ридеров и RNG
cprocsp-rdr-gui-gtk – Графический интерфейс для диалоговых операций
cprocsp-rdr-rutoken – Поддержка карт Рутокен
cprocsp-rdr-jacarta – Поддержка карт JaCarta
cprocsp-rdr-pcsc – Компоненты PC/SC для ридеров КриптоПро CSP
lsb-cprocsp-pkcs11 – Поддержка PKCS11
Руководство по настройке
После установки токена JaCarta PKI в USB порт сервера и запуска системы проверяем, что новое устройство обнаружено и появилось в списке:
lsusb
В нашем случае это Bus 004 Device 003: ID 24dc:0101
Для диагностики считывателей можно воспользоваться утилитой pcsc-tools из проекта security:chipcard (software.opensuse.org).
Запускается командой:
pcsc_scan
Пока не установлены все необходимые пакеты, информация о токене не отобразится.
Установка драйверов и ПО для работы с JaCarta PKI
На странице Поддержки сайта «Аладдин Р.Д.» загружаем Документацию и программное обеспечение для работы только с 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 удаляем:
rpm -e openct
Теперь все необходимые драйверы и ПО для работы с токеном установлены.
Выполняем диагностику с помощью утилиты pcsc-tools и убеждаемся, что JaCarta определяется в операционной системе:
pcsc_scan
Установка пакетов КриптоПро 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
Некоторые компоненты имеют зависимости. Так, например, если попытаться выполнить установку пакета поддержки SafeNet eToken PRO cprocsp-rdr-emv-64-4.0.9944-5.x86_64.rpm — EMV/Gemalto support module, то получим сообщение о необходимости сначала установить базовый компонент CSP поддержки считывателей cprocsp-rdr-pcsc-64-4.0.9944-5.x86_64.rpm — PC/SC components for CryptoPro CSP readers:
zypper install cprocsp-rdr-emv-64-4.0.9944-5.x86_64.rpm
Loading repository data...
Reading installed packages...
Resolving package dependencies...
Problem: nothing provides cprocsp-rdr-pcsc-64 >= 4.0 needed by cprocsp-rdr-emv-64-4.0.9944-5.x86_64
Solution 1: do not install cprocsp-rdr-emv-64-4.0.9944-5.x86_64
Solution 2: break cprocsp-rdr-emv-64-4.0.9944-5.x86_64 by ignoring some of its dependencies
Choose from above solutions by number or cancel [1/2/c] (c): c
Устанавливаем базовые пакеты поддержки считывателей и ключевых носителей:
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
zypper install cprocsp-rdr-novacard-64-4.0.9944-5.x86_64.rpm
zypper install cprocsp-rdr-mskey-64-4.0.9944-5.x86_64.rpm
zypper install cprocsp-rdr-gui-gtk-64-4.0.9944-5.x86_64.rpm
Проверяем итоговую конфигурацию КриптоПро CSP:
zypper search cprocsp
Loading repository data...
Reading installed packages...
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
Чтобы применить изменения, выполняем перезапуск службы криптографического провайдера и проверяем ее статус:
/etc/init.d/cprocsp restart
/etc/init.d/cprocsp status
Настройка и диагностика КриптоПро 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. Настройка, выполняем его регистрацию в криптографическом провайдере:
/opt/cprocsp/sbin/amd64/cpconfig -hardware reader -add "Aladdin R.D. JaCarta [SCR Interface] (000000000000) 00 00"
В результате выполнения в конфигурационный файл /etc/opt/cprocsp/config64.ini
в раздел [KeyDevices\PCSC] будет добавлена запись:
[KeyDevices\PCSC\"Aladdin R.D. JaCarta [SCR Interface] (000000000000) 00 00"\Default]
Чтобы выполнить требования Формуляра, Правил пользования и Руководства администратора безопасности КриптоПро CSP:
Использование СКЗИ «КриптоПро CSP» версии 4.0 с выключенным режимом усиленного контроля использования ключей не допускается. Включение данного режима описано в документах ЖТЯИ.00087-01 91 02. Руководство администратора безопасности.
Необходимо включить режим усиленного контроля использования ключей:
/opt/cprocsp/sbin/amd64/cpconfig -ini '\config\parameters' -add long StrengthenedKeyUsageControl 1
Проверяем, что режим включен:
cat /etc/opt/cprocsp/config64.ini | grep StrengthenedKeyUsageControl
Выполняем перезапуск службы криптографического провайдера:
/etc/init.d/cprocsp restart
/etc/init.d/cprocsp status
После перезапуска проверяем, что ошибок в работе провайдера с ключевыми носителями нет:
/opt/cprocsp/bin/amd64/csptest -keyset –verifycontext
/opt/cprocsp/bin/amd64/csptest -keyset -verifycontext -enum –unique
CSP (Type:80) v4.0.9017 KC2 Release Ver:4.0.9944 OS:Linux CPU:AMD64 FastCode:REA
AcquireContext: OK. HCRYPTPROV: 16052291
alfa_shark1 |SCARD\JACARTA_4E3900154029304C\CC00\E9F6
OK.
Total: SYS: 0.000 sec USR: 0.000 sec UTC: 4.560 sec
[ErrorCode: 0x00000000]
Работа с токеном JaCarta PKI
Запустим программу Xming (X11 forwarding) на своей станции, чтобы по SSH иметь возможность открывать и работать с графическими интерфейсами нужных утилит.
После установки IDProtectClient — программного обеспечения для работы с JaCarta PKI, на сервере в папке /usr/share/applications появились два файла:
Athena-IDProtectClient.desktop
Athena-IDProtectManager.desktop
Это ярлыки, в которых можно посмотреть параметры запуска утилит Exec=/usr/bin/SACTools
Запустим утилиту IDProtectPINTool.
С помощью нее задаются и меняются PIN-коды доступа к токену.
/usr/bin/IDProtectPINTool
При первой инициализации токена будет полезна ссылка, содержащая PIN-коды (пароли) ключевых носителей по умолчанию
Программа IDProtect_Manager позволяет просматривать информацию о токене и контейнере с ключами и сертификатом:
/usr/bin/IDProtect_Manager
Для доступа к контейнеру с ключами нужно ввести пароль:
Для работы с SafeNet Authentication Client eToken PRO существуют аналогичные программы — SafeNet Authentication Client Monitor и SafeNet Authentication Client Tools, которые запускаются так:
/usr/bin/SACMonitor
/usr/bin/SACTools
Выполнять операции непосредственно с ключевыми контейнерами удобнее в интерфейсе криптографического провайдера КриптоПро JavaCSP:
/jdk1.8.0_181/jre/bin/java ru.CryptoPro.JCP.ControlPane.MainControlPane
Для отображения информации о содержимом контейнера с ключами можно выполнить команду:
/opt/cprocsp/bin/amd64/csptest -keyset -cont '\\.\Aladdin R.D. JaCarta [SCR Interface] (000000000000) 00 00\alfa_shark1' -info
Для диагностики контейнера используется эта же команда с ключом –check
/opt/cprocsp/bin/amd64/csptest -keyset -cont '\\.\Aladdin R.D. JaCarta [SCR Interface] (000000000000) 00 00\alfa_shark' –check
Потребуется ввести пароль от контейнера:
Программное извлечение ключей
В общем виде пример извлечения закрытого ключа и сертификата открытого ключа из контейнера на токене с помощью КриптоПро Java CSP следующий:
import ru.CryptoPro.JCP.KeyStore.JCPPrivateKeyEntry;
import ru.CryptoPro.JCP.params.JCPProtectionParameter;
KeyStore keyStore = KeyStore.getInstance("Aladdin R.D. JaCarta [SCR Interface] (000000000000) 00 00", "JCSP");
keyStore.load(null, null);
JCPPrivateKeyEntry entry = null;
X509Certificate certificate = null;
PrivateKey privateKey = null;
try {
entry = (JCPPrivateKeyEntry) keyStore.getEntry(keyAlias,
new JCPProtectionParameter(pwd));
certificate = (X509Certificate) entry.getCertificate();
privateKey = entry.getPrivateKey();
} catch (UnrecoverableEntryException | NullPointerException e) {
LOGGER.log(Level.WARNING, PRIVATE_KEY_NOT_FOUND + keyAlias + ExceptionUtils.getFullStackTrace(e));
}
Если действовать так:
Key key = keyStore.getKey(keyAlias, pwd);
то криптографический провайдер будет пытаться в системе отобразить через консоль или GUI окно запрос на ввод пароля к контейнеру.
Результаты
Отторгаемый ключевой носитель-токен установлен во внутренний USB-порт сервера.
Само серверное оборудование опломбировано и размещается в помещении с ограниченным доступом.
Такие меры позволяют повысить уровень защиты наших информационных систем от кражи и компрометации ключей электронной подписи или шифрования, как удаленно по сети, так и физически.
Полезные ссылки
- Документация Aladdin-RD JaCarta
- wiki.astralinux.ru — Работа с КриптоПро CSP
- Перечень кодов ошибок объектной модели компонентов Microsoft COM Error Codes (Security and Setup)
- СКЗИ КриптоПро CSP 4.0 ФКН (Gemalto)
- Утилита диагностики считывателей pcsc-tools из проекта security:chipcard (software.opensuse.org)
- КриптоПро CSP для Linux. Настройка.
- Aladdin-RD PIN-коды (пароли) ключевых носителей по умолчанию
Установка расширения браузера КриптоПро ЭЦП Browser plug-in
Далее необходимо в используемом вами браузере установить расширение КриптоПро ЭЦП Browser plug-in. Cсылка на расширение для Google Chrome
https://chrome.google.com/webstore/detail/cryptopro-extension-for-c/iifchhfnnmpdbibifmljnfjhpififfog
Установка драйверов Рутокен
Rutoken Lite не требует установки дополнительных драйверов. Для установки других типов Рутокена потребуется посетить официальный сайт и установить необходимые драйвера.
Однако для полноценной работы Рутокена потребуется установить дополнительные библиотеки при помощи команды в Терминале:
sudo apt-get install libccid pcscd libpcsclite1 pcsc-tools opensc
Для Rutoken S, JaCarta PKI потребуется установка дополнительных драйверов. Пишите в комментариях, если кому-то нужно расписать данный момент.
Просмотр и Импорт в Личное хранилище сертификатов с Рутокена
Для просмотра личных сертификатов, имеющихся на подключенных контейнерах, выполняем команду в Терминале
/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -fqcn -verifyc
Для импорта всех личных сертификатов со всех подключенных носителей выполняем команду в Терминале
/opt/cprocsp/bin/amd64/csptestf -absorb -cert
Доополнительное ПО для Рутокена
Если вам понадобятся дополнительные плагины или драйвера для Рутокена, то скачать вы всегда их сможете с официального сайта производителя по ссылке, которая указана ниже:
https://www.rutoken.ru/support/download/drivers-for-nix/
На этом все. Как выясняется, установка КриптоПро в Ubuntu Linux 18.04 не такая уж сложная.
Еще материалы о Linux
Понравилась статья? Не очень? Тогда возможно, что вы напишите свою гораздо лучше. Просто перейдите по ссылке Размещение статей и ознакомьтесь с правилами публикации статей на сайте MultiBlog67.RU.
Установка КриптоПро ЭЦП Browser plug-in
Для установки КриптоПро ЭЦП Browser plug-in потребуется утилита alien. Установим ее командой:
sudo apt install alien
Далее скачиваем установочный пакет КриптоПро ЭЦП Browser plug-in с официального сайта КриптоПро.
Распаковываем архив cades_linux_amd64.zip и переходим перейти в каталог с распакованными файлами, выполним команду Открыть в терминале и далее выполним команды для преобразования rpm-пакетов в deb-пакеты:
alien -dc cprocsp-pki-2.0.0-amd64-cades.rpm
alien -dc cprocsp-pki-2.0.0-amd64-plugin.rpm
Далее устанавливаем deb-пакеты:
sudo alien -kci cprocsp-pki-cades_2.0.0-2_amd64.deb
sudo alien -kci cprocsp-pki-plugin_2.0.0-2_amd64.deb
Обратите внимание: при установке этих двух пакетов не должно быть ошибок.