КриптоПро: различия между версиями

Материал из ALT Linux Wiki
Строка 29: Строка 29:


1. Распакуйте архив и перейдите в распакованную папку
1. Распакуйте архив и перейдите в распакованную папку
2. Установите пакет {{pkg|cryptopro-preinstall}}:
2. Установите пакет {{pkg|cryptopro-preinstall}}:
  apt-get install cryptopro-preinstall
  apt-get install cryptopro-preinstall
Строка 65: Строка 66:
|}
|}


Под правами пользователя root установите базовые пакеты:
3. Установите пакеты КриптоПро:
 
apt-get install cprocsp-curl* lsb-cprocsp-base* lsb-cprocsp-capilite* lsb-cprocsp-kc1* lsb-cprocsp-rdr*
 
для поддержки токенов (Рутокен S и Рутокен ЭЦП):
 
apt-get install cprocsp-rdr-gui-gtk* cprocsp-rdr-rutoken* cprocsp-rdr-pcsc* lsb-cprocsp-pkcs11* pcsc-lite-rutokens pcsc-lite-ccid
 
'''Примечания:'''
* Можно установить пакет {{pkg|newt52}} и запустить {{cmd|./install_gui.sh}} в распакованном каталоге
* Для КриптоПро CSP 3.6 R2 потребуется установить пакет {{pkg|cprocsp-compat-altlinux-1.0.0-1.noarch.rpm}}
* Для установки {{pkg|cprocsp-rdr-gui}} может понадобиться [https://bugzilla.altlinux.org/show_bug.cgi?id=27115 libXm.so.3] ({{pkg|libopenmotif3}}) и для вывода кириллицы {{pkg|fonts-bitmap-cyr_rfx-iso8859-5}}.
* Для установки {{pkg|cprocsp-rdr-gui-gtk}} потребуется предварительно установить {{pkg|libpangox-compat}}.}}
 
 
Проверьте доступность репозиториев для установки и установите вручную пакеты '''lsb''', '''pcsc-lite''', '''libpcsclite-devel'''
 
{|class="standard"
!Пакет
!Описание
|-
|colspan="2"|'''Базовые пакеты:'''
|-
|{{pkg|cprocsp-curl}}||Библиотека libcurl с реализацией шифрования по ГОСТ
|-
|{{pkg|lsb-cprocsp-base}}||Основной пакет КриптоПро CSP
|-
|{{pkg|lsb-cprocsp-capilite}}||Интерфейс CAPILite и утилиты
|-
|{{pkg|lsb-cprocsp-kc1}}||Провайдер криптографической службы KC1
|-
|{{pkg|lsb-cprocsp-rdr}}||Поддержка ридеров и RNG
|-
|colspan="2"|'''Дополнительные пакеты:'''
|-
|{{pkg|cprocsp-rdr-gui-gtk}}||Графический интерфейс для диалоговых операций
|-
|{{pkg|cprocsp-rdr-rutoken}}||Поддержка карт Рутокен
|-
|{{pkg|cprocsp-rdr-pcsc}}||Компоненты PC/SC для ридеров КриптоПро CSP
|-
|{{pkg|lsb-cprocsp-pkcs11}}||Поддержка PKCS11
|-
|{{pkg|ifd-rutokens}}||Конфигурация Рутокеновских карт (или можно взять {{pkg|pcsc-lite-rutokens}} из репозитория)
|}


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

Версия от 11:05, 4 июля 2016

КриптоПро — линейка криптографических утилит (вспомогательных программ) — так называемых криптопровайдеров. Они используются во многих программах российских разработчиков для генерации ЭЦП, работы с сертификатами, организации структуры PKI и т.д.

Сайт: http://www.cryptopro.ru/

Совместимость

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

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


Загрузка

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

  • linux-ia32.zip (18 МБ, для i586)
  • linux-amd64.zip (18 МБ, для x86_64)
Внимание! По умолчанию при скачивании с сайта КриптоПро выдаётся лицензия на три месяца


Установка

1. Распакуйте архив и перейдите в распакованную папку

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

apt-get install cryptopro-preinstall

Этот пакет установит все требуемое для КриптоПро (включая инфраструктуру поддержки карт Рутокен S и Рутокен ЭЦП).

Примечание: Пакет cryptopro-preinstall вытягивает зависимости lsb, libpangox-compat, opensc, pcsc-lite, pcsc-lite-rutokens, pcsc-lite-ccid.


Пакет Описание
Базовые пакеты:
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-pcsc Компоненты PC/SC для ридеров КриптоПро CSP
lsb-cprocsp-pkcs11 Поддержка PKCS11
ifd-rutokens Конфигурация Рутокеновских карт (или можно взять pcsc-lite-rutokens из репозитория)

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

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

apt-get install cprocsp-curl* lsb-cprocsp-base* lsb-cprocsp-capilite* lsb-cprocsp-kc1* lsb-cprocsp-rdr*

для поддержки токенов (Рутокен S и Рутокен ЭЦП):

apt-get install cprocsp-rdr-gui-gtk* cprocsp-rdr-rutoken* cprocsp-rdr-pcsc* lsb-cprocsp-pkcs11* pcsc-lite-rutokens pcsc-lite-ccid

Примечания:

  • Можно установить пакет newt52 и запустить ./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.}}

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

Чтобы каждый раз не вводить полный путь к утилитам КриптоПро, в консоли или в виде файла /etc/bashrc.d/cryptopro.sh выполните:

export PATH="$(/bin/ls -d /opt/cprocsp/{s,}bin/*|tr '\n' ':'):$PATH"
Внимание! Если установлен пакет mono или mono4-devel, может быть конфликт по имени утилиты certmgr


Проверка лицензии

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

$ cpconfig -license -view
License validity:
4040E-G0037-EK8R3-C6K4U-HCXQG
Expires: 2 month(s) 23 day(s)
License type: Server.
Примечание: Для версии КриптоПро CSP под Linux все лицензии считаются серверными, поэтому не смущайтесь строкой «License type: Server».


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

cpconfig -license -set <серийный_номер>
Примечание: Серийный номер следует вводить с соблюдением регистра символов.


Управление персональным сертификатом

Создание

Для создания запроса потребуется:

  1. DN (cn=webserver)
  2. имя контейнера (в локальном хранилище hdimage: \\.\hdimage\webserver)
  3. имя файла запроса (webserver.csr)

Во время работы программы потребуется нажимать любые кнопки (после запроса «Press keys») и дважды указать пароль на контейнер (после запроса «Password:»).

# cryptcp -creatrqst -dn 'cn=webserver' -cont '\\.\hdimage\webserver' webserver.csr
CryptCP 3.40 (c) "Crypto-Pro", 2002-2012.
Command prompt Utility for file signature and encryption.
Press keys...
[........................................]
CryptoPro CSP: Set password on produced container "webserver".
Password:
Retype password:
Request is saved in file.
[ReturnCode: 0]

Откройте в браузере ссылку http://www.cryptopro.ru/certsrv/certrqxt.asp (тестовый удостоверяющий центр КриптоПро). вставьте в поле «Base-64-шифрованный запрос сертификата» содержимое файла webserver.csr и нажмите кнопку «Выдать». Затем сохраните файл по ссылке «Загрузить сертификат» (по умолчанию предлагается имя certnew.cer).

Установите сертификат (введите пароль на контейнер при запросе):

# cryptcp -instcert -cont '\\.\hdimage\webserver' certnew.cer 
CryptCP 3.40 (c) "Crypto-Pro", 2002-2012.
Command prompt Utility for file signature and encryption.
CryptoPro CSP: Type password for container "webserver"
Password:
Certificate is installed.
[ReturnCode: 0]

Просмотр

# certmgr -list
Certmgr 1.0 (c) "CryptoPro",  2007-2010.
program for managing certificates, CRLs and stores

=============================================================================
1-------
Issuer            : E=info@cryptopro.ru, C=RU, O=CRYPTO-PRO, CN=Test Center CRYPTO-PRO
Subject           : CN=webserver
Serial            : 0x28840500020011AA2550
SHA1 Hash         : 0x744fdc41b8d1b9132120a2bdc706b46cfb6d9e8c
Not valid before  : 29/10/2013  09:32:21 UTC
Not valid after   : 04/10/2014  07:09:41 UTC
PrivateKey Link   : Yes. Container  : HDIMAGE\\webserve.000\D0FF
=============================================================================

[ErrorCode: 0x00000000]

Удаление

Удаление сертификата

certmgr -delete 1

Удаление контейнера:

certmgr -delete -cont '\\.\hdimage\webserver'

Размещение контейнеров

Контейнеры HDIMAGE: /var/opt/cprocsp/keys/<имя пользователя>/

Сохранение сертификата в файле

# cryptcp -CSPcert -cont '\\.\hdimage\webserver' -df CERT.cer
CryptCP 3.40 (c) "Crypto-Pro", 2002-2012.
Command prompt Utility for file signature and encryption.
Openning container...
Certificate's been copied.
[ReturnCode: 0]


КриптоПро ЭЦП Browser plug-in

Плагин проверки ЭЦП для браузера требует установленного КриптоПро CSP. Инструкция на сайте производителя: http://www.cryptopro.ru/cadesplugin/Manual.aspx

1. Скачиваем архив по ссылке http://www.cryptopro.ru/products/cades/plugin/get

Примечание: Будет скачен архив под архитектуру браузера.


2. Распаковываем архив, устанавливаем пакеты:

- сначала из дистрибутива КриптоПро:

apt-get install lsb-cprocsp-cades-3.6.1-4.i486.rpm \
lsb-cprocsp-ocsp-util-3.6.1-4.i486.rpm \
lsb-cprocsp-tsp-util-3.6.1-4.i486.rpm

- затем сам плагин:

apt-get install cprocsp-npcades-*.rpm

3. Копируем библиотеки:

на 32-битной системе:

cp /opt/cprocsp/lib/ia32/libncades.so* /usr/lib/browser-plugins/

на 64-битной системе:

cp /opt/cprocsp/lib/amd64/libncades.so* /usr/lib64/browser-plugins/

4. В Mozilla Firefox или Chromium перезапустите браузер и откройте адрес about:plugins. Убедитесь, что плагин установлен. На странице http://www.cryptopro.ru/cadesplugin/Manual.aspx справа вверху должна появится надпись:

Плагин загружен

и появится ссылка «Демо-страница».

Внимание! Под Firefox 17.0.6 плагин падает. Более новые версии работают.


На странице работает только усовершенствованная подпись при следующих условиях:

  • для tsputil и ocsputil есть валидные коммерческие лицензии (запустите программы с командой license, установка лицензии с параметрами license -s <серийный номер>)

При создании обычной подписи показывается ошибка[1]:

Не удалось создать подпись из-за ошибки: Internal error. (0x800B010A)

КриптоПро JCP

  • Для установки КриптоПро JCP нужно установить Oracle Java 1.7.0 (через собственную сборку или пакеты для Fedora)
  • Распакуйте архив и перейдите в каталог
  • Выполните
./install.sh /usr/java/jre1.7.0_51 XXXXX-XXXXX-XXXXX-XXXXX-XXXXX "Your Company"

Поддержка Рутокена

java -jar rtjlib.jar -install -rutoken

Запуск контрольной панели

./ControlPane.sh /usr

(требует графического дисплея)

Используемая литература

  • ЖТЯИ.00050-03 90 02-02. СКЗИ «КриптоПро CSP». Руководство администратора безопасности. Использование СКЗИ под управлением ОС Linux (из электронной документации по КриптоПро; доступно для скачивания с демонстрационной версией)
  • ЖТЯИ.00050-03 90 07. КриптоПро CSP. Приложение командной строки
  • Инструкция по установке Крипто-Про УЭК