- Установка сертификатов используя КриптоПРО в Linux
- Пример установки отдельно взятого сертификата из контейнера
- Cryptopro linux установка личного сертификата
- Почему не работает команда csptest -keycopy -src cont ‘\.\FLASH\qwerty’ -d cont ‘\.\HDIMAGE\qwerty’ ?
- Как сделать новые закрытые ключи?
- Как проверить, работоспособен ли контейнер с закрытыми ключами?
- Как посмотреть список закрытых ключей?
- Как в Linux/Unix установить сертификаты?
- Как скопировать ключи с дискеты/флешки на HDIMAGE?
- Что такое ключевой контейнер? Зачем нужен пароль на контейнер?
Установка сертификатов используя КриптоПРО в Linux
Описание процесса установки приведено на примере дистрибутива семейства Debian (x64).
Названия файлов и директорий могут варьироваться от системы к системе.
При установке личных сертификатов не нужны права суперпользователя, и наоборот, при установке сертификатов УЦ(корневых и промежуточных) могут потребоваться такие права.
Подключите USB носитель с ключевыми контейнерами и проверьте результат команды:
/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -fqcn -verifycCSP (Type:80) v4.0.9009 KC1 Release Ver:4.0.9797 OS:Linux CPU:AMD64 FastCode:READY:AVX. AcquireContext: OK. HCRYPTPROV: 16188003 \\.\FLASH\ivanov \\.\FLASH\petrov \\.\FLASH\sidorov \\.\FLASH\vasiliev \\.\FLASH\smirnov OK. Total: SYS: 0,020 sec USR: 0,060 sec UTC: 0,180 sec
Можно сразу установить личные сертификатов из всех доступных контейнеров одной командой:
/opt/cprocsp/bin/amd64/csptestf -absorb -certs
Произойдет установка сертификатов, находящихся во всех доступных в момент запуска команды контейнерах (съемных флэш-носителях, жесткого диска и т. д.) в хранилище uMy.
Пример установки отдельно взятого сертификата из контейнера
При необходимости скопируйте ключевой контейнер \\.\FLASH\.\sidorov на жесткий диск:
/opt/cprocsp/bin/amd64/csptest -keycopy -contsrc '\\.\FLASH\sidorov' -contdest '\\.\HDIMAGE\sidor'CSP (Type:80) v4.0.9009 KC1 Release Ver:4.0.9797 OS:Linux CPU:AMD64 FastCode:READY:AVX. CryptAcquireContext succeeded.HCRYPTPROV: 38556259 CryptAcquireContext succeeded.HCRYPTPROV: 38770755 Total: SYS: 0,000 sec USR: 0,100 sec UTC: 14,920 sec [ErrorCode: 0x00000000]
Наличие [ErrorCode: 0x00000000] в завершении каждой команды КриптоПРО говорит о ее успешном выполнении.
Проверьте наличие нового контейнера \\.\HDIMAGE\sidor :
/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -fqcn -verifycCSP (Type:80) v4.0.9009 KC1 Release Ver:4.0.9797 OS:Linux CPU:AMD64 FastCode:READY:AVX. AcquireContext: OK. HCRYPTPROV: 34554467 \\.\FLASH\ivanov \\.\FLASH\petrov \\.\FLASH\sidorov \\.\FLASH\vasiliev \\.\FLASH\smirnov \\.\HDIMAGE\sidor OK. Total: SYS: 0,010 sec USR: 0,050 sec UTC: 0,130 sec [ErrorCode: 0x00000000]
Установите личный сертификат:
/opt/cprocsp/bin/amd64/certmgr -inst -cont '\.HDIMAGEsidor'Certmgr 1.0 (c) "CryptoPro", 2007-2010. program for managing certificates, CRLs and stores Install: ============================================================================= 1------- Issuer : OGRN=1234567890123, INN=1234567890, STREET=Арбат, E=info@berkut.ru, C=RU, S=77 г.Москва, L=Москва, O=ООО 'Беркут', OU=Удостоверяющий центр, CN=UCESTP Subject : SNILS=12345678901, OGRN=1234567890123, INN=0011234567890, E=sidorov@mail.ru, C=RU, S=10 Республика Карелия, L=Петрозаводск, O=ООО Ромашка, CN=Сидоров Николай Павлович, T=Администратор, G=Николай Павлович, SN=Сидоров Serial : 0x12C40953000000000019 SHA1 Hash : 0xdd0ea8db46a372571c55315cd7e4d8e2de8fb9b6 SubjKeyID : 5fc37e578cce0abe739c4da227f68a2f9abcb128 Signature Algorithm : ГОСТ Р 34.11/34.10-2001 PublicKey Algorithm : ГОСТ Р 34.10-2001 (512 bits) Not valid before : 09/08/2016 06:07:00 UTC Not valid after : 09/11/2017 06:17:00 UTC PrivateKey Link : No CA cert URL : http://cert1.ucestp.ru/estp.crt Extended Key Usage : 1.3.6.1.5.5.7.3.4 1.3.6.1.5.5.7.3.2 ============================================================================= [ErrorCode: 0x00000000]
Скачайте корневой сертификат по ссылке выше (из поля CA cert URL ): http://cert1.ucestp.ru/estp.crt и перенесите его, например, в домашнюю папку:
cp ~/Загрузки/estp.crt ~/estp.crt
Установите корневой сертификат (возможно потребуются права суперпользователя):
/opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file ~/estp.crtCertmgr 1.0 (c) "CryptoPro", 2007-2010. program for managing certificates, CRLs and stores Install: ============================================================================= 1------- Issuer : OGRN=1234567890123, INN=1234567890, STREET=Арбат, E=info@berkut.ru, C=RU, S=77 г.Москва, L=Москва, O=ООО 'Беркут', OU=Удостоверяющий центр, CN=UCESTP Subject : OGRN=1234567890123, INN=1234567890, STREET=Арбат, E=info@berkut.ru, C=RU, S=77 г.Москва, L=Москва, O=ООО 'Беркут', OU=Удостоверяющий центр, CN=UCESTP Serial : 0x50D7BC0E4A3EC9994454EB83013EE5F5 SHA1 Hash : 0xd2144a3e098b6f2decb224257f48e2b7c6d85209 SubjKeyID : 07b753cd561dee8e5e83407be4575ecc05bfec14 Signature Algorithm : ГОСТ Р 34.11/34.10-2001 PublicKey Algorithm : ГОСТ Р 34.10-2001 (512 bits) Not valid before : 17/06/2016 13:15:21 UTC Not valid after : 17/06/2021 13:25:01 UTC PrivateKey Link : No ============================================================================= [ErrorCode: 0x00000000]
Проверьте установку личного сертификата:
/opt/cprocsp/bin/amd64/certmgr -list -store uMyCertmgr 1.0 (c) "CryptoPro", 2007-2010. program for managing certificates, CRLs and stores ============================================================================= 1------- Issuer : OGRN=1234567890123, INN=1234567890, STREET=Арбат, E=info@berkut.ru, C=RU, S=77 г.Москва, L=Москва, O=ООО 'Беркут', OU=Удостоверяющий центр, CN=UCESTP Subject : SNILS=12345678901, OGRN=1234567890123, INN=0011234567890, E=sidorov@mail.ru, C=RU, S=10 Республика Карелия, L=Петрозаводск, O=ООО Ромашка, CN=Сидоров Николай Павлович, T=Администратор, G=Николай Павлович, SN=Сидоров Serial : 0x12C40953000000000019 SHA1 Hash : 0xdd0ea8db46a372571c55315cd7e4d8e2de8fb9b6 SubjKeyID : 5fc37e578cce0abe739c4da227f68a2f9abcb128 Signature Algorithm : ГОСТ Р 34.11/34.10-2001 PublicKey Algorithm : ГОСТ Р 34.10-2001 (512 bits) Not valid before : 09/08/2016 06:07:00 UTC Not valid after : 09/11/2017 06:17:00 UTC PrivateKey Link : Yes Container : HDIMAGE\\sidor.000\2B01 Provider Name : Crypto-Pro GOST R 34.10-2012 KC1 CSP Provider Info : ProvType: 80, KeySpec: 1, Flags: 0x0 CA cert URL : http://cert1.ucestp.ru/estp.crt Extended Key Usage : 1.3.6.1.5.5.7.3.4 1.3.6.1.5.5.7.3.2 ============================================================================= [ErrorCode: 0x00000000]
Cryptopro linux установка личного сертификата
В данной статье мы описываем процесс установки и настройки КриптоПро CSP на ОС Linux (на примере Debian 11).
Она будет полезна вам, если вы получили ключ и сертификат в ФНС и используете ОС Linux для работы.
Порядок настройки:
1) Установка КриптоПро CSP 5.0:
1.1. Выполните регистрацию на сайте нашей компании. Если Вы уже зарегистрированы – выполните вход (необходимо ввести адрес электронной почты и пароль, которые Вы указывали при регистрации)
1.2. Перейдите на страницу загрузки дистрибутивов КриптоПро CSP
1.3. Ознакомьтесь с условиями лицензионного соглашения и нажмите кнопку «Я согласен с лицензионным соглашением. Перейти к загрузке»
1.4. Нажмите кнопку «Скачать для Linux», для загрузки дистрибутива актуальной версии КриптоПро CSP
1.5. Распакуйте загруженный архив: tar -xvf linux-amd64_deb.tgz && cd linux-amd64_deb
1.6. Запустите установку в графическом интерфейсе посредством запуска скрипта
sudo ./install_gui.sh
При установке дополнительно нужно отметить пакеты
1.7. Для корректной работы с некоторыми ключевыми носителями необходима установка дополнительного программного обеспечения:
- pcscd (sudo apt-get install pcscd)
- libccid (sudo apt-get install libccid)
- Рутокен ЭЦП 2.0, Рутокен ЭЦП 3.0, Рутокен TLS — библиотека для работы через PKCS#11 интерфейс
- JaCarta-2 ГОСТ — Единый клиент JaCarta
- ESMART Token ГОСТ — ESMART PKI Client
- Рутокен S — пакет ifd-rutokens_1.0.4 расположен в архиве с ПО
установка скаченных выше библиотек PKCS#11 выполняется командой
sudo dpkg -i путь до скаченной библиотеки
убедитесь, что служба pcscd запущена sudo systemctl status pcscd
если нет запустите ее sudo systemctl enable —now pcscd
2) Установка КриптоПро ЭЦП BrowserPlug-in 2.0:
Распакуйте загруженный архив: tar -xvf cades-linux-amd64.tar.gz
sudo dpkg -i cprocsp-pki-cades
sudo dpkg -i cprocsp-pki-plugin
3) Установка личного сертификата:
Установка личного сертификата с привязкой к ключевому контейнеру на ключевом носителе (при подключенном ключевом носителе):
Обзор
Показать приложения
Инструменты КриптоПро
Контейнеры
Выбрать нужный ключевой носитель
Установить сертификат
Установка облачного сертификата описана в инструкции по ссылке
Если настройка произведена корректно, то в поле Сертификат появится строка, соответствующая сертификату.
После выбора сертификата и нажатия кнопки Подписать появится надпись Подпись сформирована успешно.
5) Проверка статуса лицензии КриптоПро CSP 5.0:
Обзор
Показать приложения
Инструменты КриптоПро
Общее
6) Активация лицензии КриптоПро CSP 5.0:
Обзор
Показать приложения
Инструменты КриптоПро
Общее
Ввести лицензию для меня
Дополнительная информация по работе с лицензиями доступна по ссылке .
a) При необходимости отдельной установки сертификатов
корневых удостоверяющих центров (например, в случае использования неквалифицированного сертификата) или промежуточных удостоверяющих центров (например, в случае с проблемами автоматического построения цепочки сертификатов по ссылкам из сертификатов) эти сертификаты можно установить следующим образом:
Обзор
Показать приложения
Инструменты КриптоПро
Сертификаты
Установить сертификаты
выбрать файл с нужным сертификатом
b) Для работы на портале nalog.ru необходимо:
— иметь в наличии квалифицированный сертификат электронной подписи и соответствующий ему ключ,
— для входа в личный кабинет ИП или ЮЛ с помощью электронной подписи использовать один из браузеров (рекомендуется использовать последнии доступные версии браузеров) с поддержкой ГОСТ TLS — Chromium-Gost или Яндекс.Браузер и входить по прямой ссылке:
https://lkulgost.nalog.ru/ — для юридических лиц,
c) Информация по входу на портал gosuslugi.ru доступна по ссылке .
Почему не работает команда csptest -keycopy -src cont ‘\\.\FLASH\qwerty’ -d cont ‘\\.\HDIMAGE\qwerty’ ?
Проблема может быть в том, что нельзя создавать два контейнера с одинаковым именем.
Попробуйте назвать копию как-нибудь иначе, например:
csptest -keycopy -src cont ‘\\.\FLASH\qwerty’ -d cont ‘\\.\HDIMAGE\qwerty1’
Как сделать новые закрытые ключи?
Обычно ключи создаются вместе с запросом на сертификат. Если Вам требуется создать ключи и запрос на сертификат, воспользуйтесь утилитой cryptcp(документация на неё входит в состав документации на CSP, см. раздел «Работа с запросами на сертификат»).
Если требуется просто сделать новые ключи, можно воспользоваться утилитой csptest. Она находится в директории /opt/cprocsp/bin/.
Создание контейнера пользователя:
csptest -keyset -newkeyset -cont ‘\\.\имя считывателя\имя контейнера’
Создание контейнера компьютера:
Как проверить, работоспособен ли контейнер с закрытыми ключами?
Открыть(проверить) контейнер можно утилитой csptest. Она находится в директории /opt/cprocsp/bin/ :
Открыть(проверить) контейнер пользователя:
csptest -keyset -check -cont ‘\\.\имя считывателя\имя контейнера’
Открыть(проверить) контейнер компьютера:
csptest -keyset -check -cont ‘\\.\имя считывателя\имя контейнера’ -machinekeyset
где имя считывателя:
HDIMAGE, если используете жесткий диск для хранения ключей
FLASH, если используете флешку
FAT12_0, если используете дискету
Как посмотреть список закрытых ключей?
Список контейнеров с закрытыми ключами можно посмотреть утилитой csptest. Она находится в директории /opt/cprocsp/bin/
Перечисление контейнеров пользователя:
csptest -keyset -enum_cont -verifycontext -fqcn
Перечисление контейнеров компьютера:
csptest -keyset -enum_cont -verifycontext -fqcn -machinekeys
В полученном списке имена контейнеров будут представлены в том виде, в котором их воспринимают все бинарные утилиты, входящие в дистрибутив CSP (\\.\\).
Как в Linux/Unix установить сертификаты?
Основной утилитой для работы с сертификатами является certmgr (лежит в /opt/cprocsp/bin/). К ней есть man:
man 8 certmgr
Установка корневого сертификата:
certmgr -inst -store root -file
Установка личного сертификата:
certmgr -inst -file -cont
Установка стороннего сертификата:
certmgr -inst -file
Как скопировать ключи с дискеты/флешки на HDIMAGE?
Скопируйте ключи(директорию с именем в формате 8.3) из корня дискеты или флешки в директорию /var/opt/cprocsp/keys/имя_пользователя
При этом необходимо проследить чтобы:
— владельцем файлов был пользователь, в диретории с именем которого расположен контейнер(от его имени будет осуществляться работа с ключами);
— чтобы на директорию с ключами были выставлены права, разрешаюшие владельцу всё, остальным ничего;
— чтобы на файлы были выставлены права, разершающие владельцу по крайней мере чтение и запись, остальным ничего.
Что такое ключевой контейнер? Зачем нужен пароль на контейнер?
Ключевые контейнеры – это способ хранения закрытых ключей, реализованный в нашем продукте. Их физическое представление зависит от типа ключевого носителя (на флешке, дискете, жестком диске это директория в которой хранится набор файлов с ключевой информацией; в случае со смарт-картами – файлы в защищенной памяти смарт-карты, в случае с реестром – раздел реестра, содержащий некоторые параметры). Пароль на контейнер имеет разное значение для смарт-карт и для носителей, не являющихся смарт-картами.