Установка и базовая настройка КриптоПро CSP в Linux
- Загрузка дистрибутива
- Установка КриптоПро CSP
- Ввод серийного номера (лицензии)
- Установка корневых сертификатов Минцифры
- Проверка работы с токенами
- Работа с контейнерами и просмотр сертификатов
- Установка пользовательских и корневых сертификатов
- Управление паролями (пин-кодами) контейнеров
- Генерация запроса на сертификат (CSR)
- Удаление сертификатов
Для начала необходимо скачать сертифицированную версию КриптоПро CSP для Linux. Сделать это можно с официального сайта компании (потребуется предварительная регистрация). Обычно скачивается архив вида linux-amd64_deb.tgz (для Debian/Ubuntu) или linux-amd64_rpm.tgz (для CentOS/RedHat).
Открываем терминал и переходим в папку со скачанным архивом. Распаковываем его:
tar -xvf linux-amd64_deb.tgz cd linux-amd64_deb
Установку можно запустить с помощью встроенного скрипта. Если вам не нужны графические интерфейсы (например, вы настраиваете сервер), используйте стандартный скрипт:
sudo ./install.sh
Если же вы настраиваете рабочее место пользователя с графическим интерфейсом, лучше запустить установку с поддержкой GUI и модулей для браузера (cades):
sudo ./install_gui.sh
По умолчанию КриптоПро CSP устанавливается с триальным периодом. Если у вас есть бланки с лицензионным ключом, его необходимо активировать. Все исполняемые файлы КриптоПро в Linux располагаются в директории /opt/cprocsp/.
Для ввода лицензии выполните команду:
sudo /opt/cprocsp/sbin/amd64/cpconfig -license -set XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
(Замените XXXXX на ваш ключ).
Проверить срок действия текущей лицензии можно командой:
/opt/cprocsp/sbin/amd64/cpconfig -license -view
Чтобы операционная система и браузеры доверяли сертификатам пользователей, необходимо установить корневые сертификаты Удостоверяющих Центров (Минцифры, Госуслуги и т.д.).
Скачайте нужные сертификаты (файлы с расширением .cer или .crt). Затем используйте встроенную утилиту certmgr для их добавления в хранилище компьютера (root):
sudo /opt/cprocsp/bin/amd64/certmgr -inst -store mroot -file /путь/к/сертификату/root_minsvyaz.cer
Обратите внимание: параметр -store mroot устанавливает сертификат в хранилище машины (Machine Root), что делает его доступным для всех пользователей системы.
Проверить, успешно ли установлен сертификат, можно выведя список всех корневых сертификатов:
/opt/cprocsp/bin/amd64/certmgr -list -store mroot
Если вы используете аппаратные ключи (Рутокен, JaCarta), убедитесь, что в системе установлены пакеты pcscd и libccid, отвечающие за работу со смарт-картами:
sudo apt-get install pcscd libccid sudo systemctl enable --now pcscd
Проверить, видит ли КриптоПро вставленный в USB-порт токен, можно утилитой csptest:
/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifycontext -fqcn
Если команда вывела список контейнеров (например, \\.\Aktiv Co. Rutoken...), значит система успешно распознала ЭЦП, и можно приступать к настройке плагинов в браузере (КриптоПро ЭЦП Browser plug-in) для работы на нужных площадках.
Для вывода списка существующих ключевых контейнеров (на токенах или в реестре/на жестком диске) используются утилиты csptest и csptestf:
# Общий просмотр всех доступных контейнеров /opt/cprocsp/bin/amd64/csptest -keyset -enum_containers -verifycontext -fqcn # Просмотр контейнеров с указанием типа криптопровайдера (75 - ГОСТ Р 34.10-2012) /opt/cprocsp/bin/amd64/csptestf -keyset -provtype 75 -enum_containers -verifycontext -fqcn
Чтобы просмотреть список всех сертификатов, установленных в личном хранилище текущего пользователя (uMy):
/opt/cprocsp/bin/amd64/certmgr -list -store uMy
Установка сертификата из формата .pfx (контейнер, содержащий как сам сертификат, так и закрытый ключ) с вводом пин-кода:
/opt/cprocsp/bin/amd64/certmgr -install -pfx -file /путь/к/сертификату.pfx -pin 123456
Если сертификат (.cer) и контейнер с закрытым ключом поставляются раздельно, сертификат необходимо установить в личное хранилище с явной привязкой к нужному контейнеру:
/opt/cprocsp/bin/amd64/certmgr -inst -store uMy -file /путь/к/сертификату.cer -cont '\\.\HDIMAGE\Cont1' -pin 1234
Для установки корневого сертификата Удостоверяющего Центра в хранилище текущего пользователя (uRoot) используется команда:
/opt/cprocsp/bin/amd64/certmgr -inst -file /путь/к/сертификату/CA_Cert.cer -store uRoot
При автоматизации серверных задач часто требуется снять пароль с контейнера. Смена или удаление пароля выполняется с помощью ключа -passwd -change.
Чтобы полностью удалить пароль (заменить его на пустой), передайте пустые кавычки в качестве нового значения:
/opt/cprocsp/bin/amd64/csptest -passwd -change '' -cont '\\.\HDIMAGE\Cont1' -passwd 1234
Для выпуска нового сертификата или продления текущего можно сформировать файл запроса (.csr) напрямую из консоли утилитой cryptcp. В параметре -dn передаются реквизиты организации (Distinguished Name), а в -cont — целевой контейнер:
/opt/cprocsp/bin/amd64/cryptcp -creatrqst request.csr -provtype 80 -cont "\\.\HDIMAGE\Cont1" -certusage "1.3.6.1.5.5.7.3.2" -dn "E=admin@example.com, C=RU, S=77 Москва, L=Москва, O=ООО Ромашка, OID.1.2.643.3.131.1.1=000000000000, OID.1.2.643.100.1=1000000000000, STREET=123456\, г. Москва\, ул. Примерная д.1 оф. 1, CN=example.com" -ex -ku
Очистка хранилища от устаревших, отозванных или недействительных сертификатов выполняется по их отпечатку (thumbprint).
Например, для удаления сертификата из корневого хранилища машины (mRoot):
/opt/cprocsp/bin/amd64/certmgr -delete -store mRoot -thumbprint 447684a0d74df7cd8216aa071925ddc7f2e3ef07

Комментарии (0)