криптопро не видит jakarta linux

Криптопро не видит jakarta linux

Добрый день! Уважаемые читатели и подписчики IT блога Pyatilistnik.org. Последние два дня у меня была интересная задача по поиску решения на вот такую ситуацию, есть физический или виртуальный сервер, на нем установлена наверняка многим известная КриптоПРО. На сервер подключен USB ключ JaCarta, который используется для подписи документов для ВТБ24 ДБО. Локально на Windows 10 все работает, а вот на серверной платформе Windows Server 2016 и 2012 R2, Криптопро не видит ключ JaCarta. Давайте разбираться в чем проблема и как ее поправить.

Описание окружения

Есть виртуальная машина на Vmware ESXi 6.5, в качестве операционной системы установлена Windows Server 2012 R2. На сервере стоит КриптоПРО 4.0.9944, последней версии на текущий момент. С сетевого USB хаба, по технологии USB over ip, подключен ключ JaCarta. Ключ в системе видится, а вот в КриптоПРО нет.

Алгоритм решения проблем с JaCarta

КриптоПРО очень часто вызывает различные ошибки в Windows, простой пример (Windows installer service could not be accessed). Вот так вот выглядит ситуация, когда утилита КриптоПРО не видит сертификат в контейнере.

Как видно в утилите UTN Manager ключ подключен, он видится в системе в смарт картах в виде Microsoft Usbccid (WUDF) устройства, но вот CryptoPRO, этот контейнер не определяет и у вас нет возможности установить сертификат. Локально токен подключали, все было то же самое. Стали думать что сделать.

Возможные причины с определением контейнера

Как решить проблему, что криптопро не видит USB ключ?

Создали новую виртуальную машину и стали ставить софт все последовательно.

Установка единого клиента JaCarta PKI

Далее полученный архив вы распаковываете и запускаете установочный файл, под свою архитектуру Windows, у меня это 64-х битная. Приступаем к установке Jacarta драйвера. Единый клиент Jacarta, ставится очень просто (НАПОМИНАЮ ваш токен в момент инсталляции, должен быть отключен). На первом окне мастера установки, просто нажимаем далее.

Принимаем лицензионное соглашение и нажимаем «Далее»

Чтобы драйвера токенов JaCarta у вас работали корректно, достаточно выполнить стандартную установку.

Если выберете «Выборочную установку», то обязательно установите галки:

Далее нажимаем «Установить».

Через пару секунд, Единый клиент Jacarta, успешно установлен.

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

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

После установки JaCarta PKI, нужно установить КриптоПРО, для этого заходите на официальный сайт.

На текущий момент самая последняя версия КриптоПро CSP 4.0.9944. Запускаем установщик, оставляем галку «Установить корневые сертификаты» и нажимаем «Установить (Рекомендуется)»

Инсталляция КриптоПРО будет выполнена в фоновом режиме, после которой вы увидите предложение, о перезагрузке браузера, но я вам советую полностью перезагрузиться.

После перезагрузки подключайте ваш USB токен JaCarta. У меня подключение идет по сети, с устройства DIGI, через клиента Anywhere View. В клиенте Anywhere View, мой USB носитель Jacarta, успешно определен, но как Microsoft Usbccid (WUDF), а в идеале должен определиться как JaCarta Usbccid Smartcard, но нужно в любом случае проверить, так как все может работать и так.

Открыв утилиту «Единый клиент Jacarta PKI», подключенного токена обнаружено не было, значит, что-то с драйверами.

Откройте диспетчер устройств Windows, найдите пункт «Считыватели устройств смарт-карт (Smart card readers)» щелкните по Microsoft Usbccid (WUDF) и выберите пункт «Свойства». Перейдите на вкладку «Драйвера» и нажмите удалить (Uninstall)

Согласитесь с удалением драйвера Microsoft Usbccid (WUDF).

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

После перезагрузки системы, вы можете увидеть установку устройства и драйверов ARDS Jacarta.

Откройте диспетчер устройств, вы должны увидеть, что теперь ваше устройство определено, как JaCarta Usbccid Smartcar и если зайти в его свойства, то вы увидите, что смарт карта jacarta, теперь использует драйвер версии 6.1.7601 от ALADDIN R.D.ZAO, так и должно быть.

Если открыть единый клиент Jacarta, то вы увидите свою электронную подпись, это означает, что смарт карта нормально определилась.

Открываем CryptoPRO, и видим, что криптопро не видит сертификат в контейнере, хотя все драйвера определились как нужно. Есть еще одна фишка.

ОБЯЗАТЕЛЬНО снимите галку «Не использовать устаревшие cipher suite-ы» и перезагрузитесь.

После этих манипуляций у меня КриптоПРО увидел сертификат и смарт карта jacarta стала рабочей, можно подписывать документы.

Еще можете в устройствах и принтерах, увидеть ваше устройство JaCarta,

Если у вас как и у меня, токен jacarta установлен в виртуальной машине, то вам придется устанавливать сертификат, через console виртуальной машины, и так же дать на нее права ответственному человеку. Если это физический сервер, то там придется давать права на порт управления, в котором так же есть виртуальная консоль.

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

Когда вы установили все драйвера для токенов Jacarta, вы можете увидеть при подключении по RDP и открытии утилиты «Единый клиент Jacarta PKI» вот такое сообщение с ошибкой:

Как исправить ошибку «Не возможно подключиться к службе управления смарт-картами».

Вот такой вот был траблшутинг по настройке токена Jacarta, КриптоПРО на терминальном сервере, для подписи документов в ВТБ24 ДБО. Если есть замечания или поправки, то пишите их в комментариях.

Источник

КриптоПро не видит ключ JaCarta

Из нашей статьи вы узнаете:

К сожалению, довольно часто операционная система Windows и «КриптоПро» конфликтуют между собой, что ведет к невозможности «увидеть» ключ ЭЦП и подписать документ. Источники проблем могут быть разные, но их вполне реально оперативно решить.

Основные причины невозможности доступа к ключу JaCarta

Как установить ключ JaCarta

Для предотвращения проблем, когда «КриптоПро» не видит JaCarta, важно правильно настроить программное обеспечение для работы с токеном. Ниже вы найдете подробный алгоритм, но мы сразу отметим, что подключать JaCarta к компьютеру можно только после завершения установки всего объема ПО, идущего следующим образом:

Установка и настройка считывателя «КриптоПро»

Следующим этапом становится установка драйвера CCID с обязательной перезагрузкой, а также настройка считывателей в «КриптоПро». Делают это следующим образом:

После завершения установки нажмите кнопку «Готово». Теперь нужно выбрать из перечня доступных считывателей AKS ifdh 0 и нажать кнопку «Далее» (в последующем данную процедуру нужно будет повторить и для других типов считывателей). После завершения вновь надо перезагрузить компьютер.

Теперь в диалоговом окне «Управление считывателями» будет доступен весь перечень считывателей. Для дальнейшей настройки необходимо настроить носители. Для этого выполните следующие действия:

После завершения установки необходимо опять перезагрузить компьютер для подключения уже непосредственно носителя JaCarta, который должен быть виден в «КриптоПро», что позволит подписывать ЭЦП документы и отчеты для государственных органов.

При наличии вопросов и необходимости генерации сертификатов ЭП любого типа обращайтесь в компанию «Астрал». Мы предлагаем подобные услуги на выгодных условиях и с максимальной оперативностью. Дополнительно мы готовы проконсультировать по вопросам установки, выбора конкретного тарифного плана и типа электронных подписей с учетом специфики вашей компании.

Источник

Работа с СКЗИ и аппаратными ключевыми носителями в Linux

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

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

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

Причина 1

Причина 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 можно было выполнить его инициализацию. Но при работе с СКЗИ он вел себя крайне странно и непредсказуемо.

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

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

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

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

«Невалидный набор ключей» — причина такого сообщения, возможно, кроется либо в старом чипе, прошивке и апплете Gemalto, либо в их драйверах для ОС, которые не поддерживают новые стандарты формирования ЭП и функции хэширования ГОСТ Р 34.10-2012 и ГОСТ Р 34.11-2012.

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

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

Проблему удалось решить, взяв настоящий токен 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 необходимо установить следующие компоненты:

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

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

Некоторые компоненты имеют зависимости. Так, например, если попытаться выполнить установку пакета поддержки 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-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

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

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

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

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

криптопро не видит jakarta linux (000000000000) 00 00″\Default]

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

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

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

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

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

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

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

Работа с токеном 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-порт сервера.

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

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

Источник

Понравилась статья? Поделиться с друзьями:

Не пропустите наши новые статьи:

  • криптопро на mac os x установить личный сертификат в криптопро
  • криптопро на linux сервере
  • криптопро как установить сертификат линукс
  • Криптопро для чего нужна эта программа
  • криптопро для linux astra

  • Операционные системы и программное обеспечение
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest
    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии