Error code 0x00000000 криптопро linux

установка КриптоПро и личного сертификата

Дмитрий Кривокрысенко

Здравствуйте Господа!
Благодарю за оказанную помощь.
Подскажите пожалуйста пути решения в установке личного сертификата пользователя  *.cer в систему Alt Linux 7KDE x64, необходимо для работы с системой «ГАС Управление». Все остальные шаги по установке КриптоПро и КриптоФокс прошел.
А с установкой сертификата проблемы.
Заранее благодарен


Записан



Записан

Андрей Черепанов (cas@)


Дмитрий Кривокрысенко

Здравствуйте Андрей!
Продолжаю экспериментировать с Centaurus 7.05 x32
Прошел все указанные Вами шаги по установке Крипто Про и плагина для браузера.
Информацию брал тут https://www.altlinux.org/%D0%9A%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%9F%D1%80%D0%BE
споткнулся на этапе установки корневого сертификата
выдал ошибку:

[root@LINUX-ANMR-PC3 linux-ia32]# /opt/cprocsp/bin/ia32/certmgr -inst -cert -file ~/Загрузки/kornevoy-sertifikat-_kvalifitsirovannyy_.cer -store uRoot
Certmgr 1.0 (c) «CryptoPro»,  2007-2010.
program for managing certificates, CRLs and stores

Error(0x2). Can not open file
   at /dailybuildsbranches/CSP_4_0/CSPbuild/CSP/src/certmgr/certmgr.cpp:2329

The system cannot find the file specified.
[ErrorCode: 0x00000002]

Подскажите пожалуйста, что это значит и как это решить, ибо только учусь.


Записан


КриптоПро не может найти файл сертификата. Зачем Вы под root его запускали, а в пути указали домашний каталог (то есть /root), где ничего не лежит?
КриптоПро прекрасно работает под обычным пользователем. Под ним и скачивайте cer и запускайте certmgr (с установленным cryptopro-preinstall не нужно вводить полные пути к исполняемым файлам.


Записан

Андрей Черепанов (cas@)



Записан


Дмитрий Кривокрысенко

при установке от имени пользователя тоже есть ошибка

[master@LINUX-ANMR-PC3 ~]$ /opt/cprocsp/bin/ia32/certmgr -inst -cert -file ~/Загрузки/kornevoy-sertifikat-_kvalifitsirovannyy_.cer -store uRoot
Certmgr 1.0 (c) «CryptoPro»,  2007-2010.
program for managing certificates, CRLs and stores

Install:
=============================================================================
1——-
Issuer              : UnstructuredName=Server CA, E=uc_fk@roskazna.ru, S=77 г. Москва, INN=007710568760, OGRN=1047797019830, STREET=»улица Ильинка, дом 7″, L=Москва, C=RU, O=Федеральное казначейство, CN=УЦ Федерального казначейства
Subject             : UnstructuredName=Server CA, E=uc_fk@roskazna.ru, S=77 г. Москва, INN=007710568760, OGRN=1047797019830, STREET=»улица Ильинка, дом 7″, L=Москва, C=RU, O=Федеральное казначейство, CN=УЦ Федерального казначейства
Serial              : 0x01
SHA1 Hash           : 0x30ef8b31cb2b67501e523d741273a378e3aa3a59
SubjKeyID           : 9e710e0fdab401285f3fe2cb8f65159702478cab
Signature Algorithm : ГОСТ Р 34.11/34.10-2001
PublicKey Algorithm : ГОСТ Р 34.10-2001 (512 bits)
Not valid before    : 28/06/2013  13:09:33 UTC
Not valid after     : 28/06/2018  13:09:33 UTC
PrivateKey Link     : No                 
=============================================================================

[ErrorCode: 0x00000000]
[master@LINUX-ANMR-PC3 ~]$


Записан


А не связана она с кириллическим названием каталога «Загрузки» ?


Записан


[ErrorCode: 0x00000000]

Код ошибки 0 — не означает-ли, что ошибки нет?


Записан



Записан


Нет никакой ошибки, код 0.


Записан

Андрей Черепанов (cas@)


Дмитрий Кривокрысенко

Благодарю за информацию!
при попытке использовать token-manager, происходит импорт, даже сообщение об успешном импорте выходит, а самого файла сертификата  не видно. Только после импорта через certmgr, сертификат появляется в списке установленных. В чем причина может быть?


Записан


Дмитрий Кривокрысенко

пытаюсь сделать по этой инструкции https://geektimes.ru/post/280268/
какие каталоги имеются в виду чтобы вот это:

В том случае, если используется Linux с rpm-пакетами, то необходимо его распаковать и скопировать в соответствующие каталоги/директории/папки. Необходимо также будет выполнить скрипт postinst от имени root:
#sh –xv postinst

сработало с установленным firefox-gost ???

« Последнее редактирование: 08.12.2016 14:20:25 от ruslandh »


Записан


пытаюсь сделать по этой инструкции https://geektimes.ru/post/280268/

сработало с установленным firefox-gost ???

там используется другой «firefox» и другой криптопровайдер — не cryptopro…

Видимо нужно иметь несколько компьютеров для доступа к разным госсайтам  :-o


Записан


при попытке использовать token-manager, происходит импорт, даже сообщение об успешном импорте выходит, а самого файла сертификата  не видно. Только после импорта через certmgr, сертификат появляется в списке установленных. В чем причина может быть?

лучше спросить у автора — https://github.com/bmakarenko


Записан


Дмитрий Кривокрысенко

в результате танца с бубном добился появления плагина в списке Firefox!!!!
Дальше интересней!
При входе на gasu.gov.ru всплывает окно плагина ура!
Но пишет нет действующих сертификатов :-
после установки token-manager, бывшему пользователю винды наглядно видны установленные корневые сертификаты! Но при установке личного сертификата вышло сообщение «импорт успешно!» и все в окне просмотра его нет. если выполнить certmgr -list то все пристойно, под номером 1 пользовательский под номером 2 корневой.
где затык не пойму


Записан


Установка сертификатов используя КриптоПРО в 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
\.FLASHivanov
\.FLASHpetrov
\.FLASHsidorov
\.FLASHvasiliev
\.FLASHsmirnov
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 '\.FLASHsidorov' -contdest '\.HDIMAGEsidor'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] в завершении каждой команды КриптоПРО говорит о ее успешном выполнении.

Проверьте наличие нового контейнера \.HDIMAGEsidor:

/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
\.FLASHivanov
\.FLASHpetrov
\.FLASHsidorov
\.FLASHvasiliev
\.FLASHsmirnov
\.HDIMAGEsidor
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         : <mark>http://cert1.ucestp.ru/estp.crt</mark>
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.0002B01
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]

Offline

nvrstyle

 


#1
Оставлено
:

27 ноября 2018 г. 18:38:51(UTC)

nvrstyle

Статус: Новичок

Группы: Участники

Зарегистрирован: 27.11.2018(UTC)
Сообщений: 2
Австралия
Откуда: Краснодар

Здравствуйте, при попытке подписать файл цифровой подписью при помощи консольной утилиты csptest.exe после вводы пароля контейнера сначала появляется сообщение о том, что c 1 января 2020 года запрещено формирование электронной подписи с помощью ключей ГОСТ Р 34.10-2001, после чего в консоли csptest появляется сообщение — A CSP has been acquired [Error code: 0x00000000] и подпись файла не производится. Прошу помочь.

Отредактировано пользователем 27 ноября 2018 г. 22:09:40(UTC)
 | Причина: Не указана


Вверх

WWW


Offline

Андрей Писарев

 


#2
Оставлено
:

28 ноября 2018 г. 0:09:32(UTC)

Андрей *

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 26.07.2011(UTC)
Сообщений: 11,755
Мужчина
Российская Федерация

Сказал «Спасибо»: 451 раз
Поблагодарили: 1840 раз в 1423 постах

Автор: nvrstyle Перейти к цитате

Здравствуйте, при попытке подписать файл цифровой подписью при помощи консольной утилиты csptest.exe после вводы пароля контейнера сначала появляется сообщение о том, что c 1 января 2020 года запрещено формирование электронной подписи с помощью ключей ГОСТ Р 34.10-2001, после чего в консоли csptest появляется сообщение — A CSP has been acquired [Error code: 0x00000000] и подпись файла не производится. Прошу помочь.

Здравствуйте.

Сообщите используемую ОС и версию КриптоПРО CSP (вкладка Состав).
Приведите пример вызова csptest и протестируйте также используемый сертификат

Цитата:

ПускВсе программыКРИПТО-ПРОКриптоПРО CSP
Вкладка СервисПротестироватьПо сертификату — укажите сертификат, который используете в csptest
Тестирование выполняется без ошибок?

Техническую поддержку оказываем тут
Наша база знаний


Вверх

WWW


Offline

nvrstyle

 


#3
Оставлено
:

28 ноября 2018 г. 10:15:08(UTC)

nvrstyle

Статус: Новичок

Группы: Участники

Зарегистрирован: 27.11.2018(UTC)
Сообщений: 2
Австралия
Откуда: Краснодар

Автор: Андрей Писарев Перейти к цитате

Автор: nvrstyle Перейти к цитате

Здравствуйте, при попытке подписать файл цифровой подписью при помощи консольной утилиты csptest.exe после вводы пароля контейнера сначала появляется сообщение о том, что c 1 января 2020 года запрещено формирование электронной подписи с помощью ключей ГОСТ Р 34.10-2001, после чего в консоли csptest появляется сообщение — A CSP has been acquired [Error code: 0x00000000] и подпись файла не производится. Прошу помочь.

Здравствуйте.

Сообщите используемую ОС и версию КриптоПРО CSP (вкладка Состав).
Приведите пример вызова csptest и протестируйте также используемый сертификат

Цитата:

ПускВсе программыКРИПТО-ПРОКриптоПРО CSP
Вкладка СервисПротестироватьПо сертификату — укажите сертификат, который используете в csptest
Тестирование выполняется без ошибок?

Используемая OC Windows 8.1 и версия КриптоПРО CSP 4.0.9842
Тестирование сертификата было выполнено без ошибок, но перед тестированием сертификата появилось предупреждение «с 1 января 2020 года запрещено формирование электронной подписи с помощью ключей ГОСТ Р 34.10-2001»
Может быть именно из-за использования ключей ГОСТ Р 34.10-2001 не удаётся подписать документ?
Но в логе тестирование присутствует такая строка: «Ключ подписи — отсутствует». Нормально ли это? Все остальные поля отмечены как успешно

Так же была попытка подписать документ этим же сертификатом, но уже на другом ПК: Windows 10 и версия КриптоПРО CSP 4.0.9958, появилась точно такая же ошибка и подписать документ не удалось.

Пример вызова csptest:
csptest.exe -sfsign -sign -detached -add -in «имя_файла_для_подписи» -out «имя_подписанного_файла.sig» -my email@email.ru


Вверх

WWW

Пользователи, просматривающие эту тему

Guest

Быстрый переход
 

Вы не можете создавать новые темы в этом форуме.

Вы не можете отвечать в этом форуме.

Вы не можете удалять Ваши сообщения в этом форуме.

Вы не можете редактировать Ваши сообщения в этом форуме.

Вы не можете создавать опросы в этом форуме.

Вы не можете голосовать в этом форуме.


Offline

hijkez0

 


#1
Оставлено
:

30 марта 2020 г. 9:59:27(UTC)

hijkez0

Статус: Новичок

Группы: Участники

Зарегистрирован: 30.03.2020(UTC)
Сообщений: 2
Российская Федерация
Откуда: Оренбург

Здравствуйте!
Поставил ngate (1.0.0.6-lin-64bit) на ubuntu используя скрипт установки.
Приложение установилось , но не сертификаты организации.
В логе сообщение: «Critical Can’t save certificate into store. Insufficient rights.»
Пробую установить в ручную:
/opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file ./packages/Install/certs/GOST/имя_сертификата_ca.cer
/opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file ./packages/Install/certs/GOST/имя_сертификата.cer
Выполнение этих команд завершается сообщением: «[ErrorCode: 0x00000000]»
Пробую сделать импорт через графический интерфейс приложения, говорит что недостаточно прав.
Подскажите, как решить пробему?
Не хватает прав приложению? или на файлах сертификатов права нужно изменить?


Вверх


Offline

Андрей Куликов

 


#2
Оставлено
:

30 марта 2020 г. 11:33:50(UTC)

Андрей Куликов

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 17.10.2010(UTC)
Сообщений: 122
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 2 раз
Поблагодарили: 7 раз в 6 постах

Рутовые сертификаты можно поставить только руту.
А GUI под пользователем запускается.


Вверх


Offline

hijkez0

 


#3
Оставлено
:

30 марта 2020 г. 12:02:02(UTC)

hijkez0

Статус: Новичок

Группы: Участники

Зарегистрирован: 30.03.2020(UTC)
Сообщений: 2
Российская Федерация
Откуда: Оренбург

Пробовал так:
sudo /opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file ./packages/Install/certs/GOST/имя_сертификата_ca.cer
sudo /opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file ./packages/Install/certs/GOST/имя_сертификата.cer
Возникает ошибка:
Certmgr 1.1 (c) «Crypto-Pro», 2007-2019.
program for managing certificates, CRLs and stores

Error(0x2). Cannot open file
at /dailybuildsbranches/CSP_5_0r0/CSPbuild/CSP/src/certmgr/certmgr.cpp:3500

The system cannot find the file specified.
[ErrorCode: 0x00000002]

Хотя ,если сделать sudo /opt/cprocsp/bin/amd64/certmgr -inst -store uroot
то в списке видны нужные сертификаты, но не вины через граф интерфейс приложения.

Отредактировано пользователем 30 марта 2020 г. 12:11:10(UTC)
 | Причина: Не указана


Вверх


Offline

Nikolay Batischev

 


#4
Оставлено
:

30 марта 2020 г. 17:46:41(UTC)

Nikolay

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 06.11.2013(UTC)
Сообщений: 70
Мужчина
Албания
Откуда: Тирана

Сказал «Спасибо»: 3 раз
Поблагодарили: 11 раз в 11 постах

У вас два сертификата скорее всего один корневой(самоподписанный), второй промежуточный.
Если это так, корень нужно ставить в uroot, всё верно. Промежуточный в uCa.


Вверх

Пользователи, просматривающие эту тему

Guest (2)

Быстрый переход
 

Вы не можете создавать новые темы в этом форуме.

Вы не можете отвечать в этом форуме.

Вы не можете удалять Ваши сообщения в этом форуме.

Вы не можете редактировать Ваши сообщения в этом форуме.

Вы не можете создавать опросы в этом форуме.

Вы не можете голосовать в этом форуме.

Сен 042020

Описание процесса установки приведено на примере дистрибутива семейства Debian (x64).
Названия файлов и директорий могут варьироваться от системы к системе.

При установке личных сертификатов не нужны права суперпользователя, и наоборот, при установке сертификатов УЦ (корневых и промежуточных) могут потребоваться такие права.

Подключите USB носитель с ключевыми контейнерами и проверьте результат команды:

/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -fqcn -verifyc

	CSP (Type:80) v4.0.9009 KC1 Release Ver:4.0.9797 OS:Linux CPU:AMD64 FastCode:READY:AVX.
	AcquireContext: OK. HCRYPTPROV: 16188003
	\.FLASHivanov
	\.FLASHpetrov
	\.FLASHsidorov
	\.FLASHvasiliev
	\.FLASHsmirnov
	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 '\.FLASHsidorov' -contdest '\.HDIMAGEsidor'
>
	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] в завершении каждой команды КриптоПРО говорит о ее успешном выполнении.

Проверьте наличие нового контейнера \.HDIMAGEsidor:

/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -fqcn -verifyc
>
	CSP (Type:80) v4.0.9009 KC1 Release Ver:4.0.9797 OS:Linux CPU:AMD64 FastCode:READY:AVX.
	AcquireContext: OK. HCRYPTPROV: 34554467
	\.FLASHivanov
	\.FLASHpetrov
	\.FLASHsidorov
	\.FLASHvasiliev
	\.FLASHsmirnov
	\.HDIMAGEsidor
	OK.
	Total: SYS: 0,010 sec USR: 0,050 sec UTC: 0,130 sec
	[ErrorCode: 0x00000000]

Установите личный сертификат:

/opt/cprocsp/bin/amd64/certmgr -inst -store uMy -f '/home/user/Рабочий стол/Установка личного сертификата/Картошкин.cer'
>
	Certmgr 1.0 (c) "CryptoPro",  2007-2010.
	program for managing certificates, CRLs and stores

	=============================================================================
	1-------
	Issuer              : E=uc_fk@roskazna.ru, S=г. Москва, INN=007710568760, OGRN=1047797019830, STREET="Большой Златоустинский переулок, д. 6, строение 1", L=Москва, C=RU, O=Федеральное казначейство, CN=Федеральное казначейство
	Subject             : INN=000000000000, SNILS=00000000000, E=ii@aaa.tomsk.gov.ru, C=RU, S=Томская область, L=Томск, O=АДМИНИСТРАЦИЯ, G=Имя Отчество, SN=Фамилия, CN=Фамилия Имя Отчество
	Serial              : 0x6B6C6655F42E3B44FE3A0DDC5DD5C91A07189F75
	SHA1 Hash           : 017e04b742841f5aefa224dee91a0d5d74ae2a85
	SubjKeyID           : cedbb348ece2d32ecd6a8337126b8a7996a26c4c
	Signature Algorithm : ГОСТ Р 34.11-2012/34.10-2012 256 bit
	PublicKey Algorithm : ГОСТ Р 34.10-2012 (512 bits)
	Not valid before    : 25/05/2020  08:54:47 UTC
	Not valid after     : 25/08/2021  08:54:47 UTC
	PrivateKey Link     : No
	CDP                 : http://crl.roskazna.ru/crl/ucfk_2020.crl
	CDP                 : http://crl.fsfk.local/crl/ucfk_2020.crl
	Extended Key Usage  : 1.3.6.1.5.5.7.3.2
	=============================================================================

Установите закрытый ключ для личного сертификата:

/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.crt
>
	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             : 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 uMy
>
	Certmgr 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.0002B01
	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]

Показать список корневых сертификатов

/opt/cprocsp/bin/amd64/certmgr -list -store root | grep -iE "^Serial|^Subject"
>
	Subject             : E=uc_fk@roskazna.ru, S=г. Москва, INN=007710568760, OGRN=1047797019830, STREET="Большой Златоустинский переулок, д. 6, строение 1", L=Москва, C=RU, O=Федеральное казначейство, CN=Федеральное казначейство
	Serial              : 0x62AB79950000000003B6
	Subject             : E=uc_fk@roskazna.ru, S=г. Москва, INN=007710568760, OGRN=1047797019830, STREET="улица Ильинка, дом 7", L=Москва, C=RU, O=Федеральное казначейство, CN=Федеральное казначейство
	Serial              : 0x36ACD45500000000012F

Посмотреть данные одного сертификата:

/opt/cprocsp/bin/amd64/certmgr -list -store uMy -dn SN=Картошкин
/opt/cprocsp/bin/amd64/certmgr -list -store uMy | grep -iE "Картошкин"


Удалить сертификат из хранилища:

/opt/cprocsp/bin/amd64/certmgr -delete -store uMy -dn SN=Картошкин


Экспорт сертификата:

/opt/cprocsp/bin/amd64/certmgr -export -cert -store uMy -dest 0x2A9DDD325F1B0FAF4957EAA2532DE481.cer -dn CN=CNExample


Посмотреть лицензию КриптоПРО (возможно потребуются права суперпользователя):

/opt/cprocsp/sbin/amd64/cpconfig -license -view
>
	License validity:
	xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
	Expires: 3 month(s) 1 day(s)
	License type: Server.

Установить лицензионный ключ КриптоПРО (возможно потребуются права суперпользователя):

/opt/cprocsp/sbin/amd64/cpconfig -license -set xxxxx-xxxxx-xxxxx-xxxxx-xxxxx


Оригиналы статей:

https://estp.ru/test_eds/cert_install_linux/
https://iamsan.ru/unix-like/cryptopro-linux-faq

Нет опубликованных комментариев.

26.10.2018

Используемые символы

# выполняется от суперпользователя «root» или через «sudo»
$ выполняется от обычного пользователя
\ комментарий
На новых версия Firefox работать скорее всего не будет или часть функционала будет недоступна, можно взять cryptofox с сайта крипто-про
Данные настройки были проверены на встроенном браузере в астру chromium или chromium-gost от крипто-про

# apt install alien libpcsclite1 pcscd libccid zip unzip

Загрузить последнюю версию Крипто-Про с официального сайта

Открыть Пуск->Утилиты->Менеджер файлов mc
перейти в каталог куда загрузили архив

Распакуем архив
$ tar -xf linux-amd64_deb.tgz

Перейдем в каталог
$ cd linux-amd64_deb

получим то что на картинке ниже

mc_cprocsp.jpg

# sh install_gui.sh

mc_cprocsp_install_1.jpg

Жмем клавишу Enter

Выбираем все пункты нажимая на клавишу «Пробел» переход осуществляется клавишами вниз/вверх

mc_cprocsp_install_2.jpg

Жмем клавишу Enter

mc_cprocsp_install_3.jpg

Жмем клавишу Enter

mc_cprocsp_install_4.jpg

Жмем клавишу Enter

mc_cprocsp_install_6.jpg

Жмем клавишу Enter

mc_cprocsp_install_7.jpg

Вводим свой серийный номер. Регистр нужно строго соблюдать!!!
Жмем клавишу Enter

mc_cprocsp_install_8.jpg

Жмем выбираем Exit клавишами Tab, жмем клавишу Enter, Выбираем Yes, жмем клавишу Enter

Для USB токенов нужно установить данное ПО
# apt install libpcsclite1 pcscd libccid

они все есть в репозитарии астры, ничего нигде искать дополнительно не надо

Библиотека libccid не ниже 1.4.2

Для rutoken S нужно установить драйвер c сайта производителя, лучше установить более новое
https://www.rutoken.ru/support/download/drivers-for-nix/

# dpkg -i ifd-rutokens_1.0.4_amd64.deb

Проверить USB токены можно командой
$ /opt/cprocsp/bin/amd64/list_pcsc

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

Качаем архив с плагином с официального сайта Крипто-ПРО https://www.cryptopro.ru/products/cades/plugin желательно в отдельный каталог
Заходим в каталог куда скачали архив с плагином и разархивируем

$ tar -xf cades_linux_amd64.tar.gz

Конвертируем в deb пакеты

# alien *.rpm

<вывод команды>
Warning: Skipping conversion of scripts in package cprocsp-pki-cades: postinst prerm
Warning: Use the —scripts parameter to include the scripts.
cprocsp-pki-cades_2.0.0-2_amd64.deb generated
cprocsp-pki-phpcades_2.0.0-2_amd64.deb generated
Warning: Skipping conversion of scripts in package cprocsp-pki-plugin: postinst prerm
Warning: Use the —scripts parameter to include the scripts.
cprocsp-pki-plugin_2.0.0-2_amd64.deb generated
Warning: Skipping conversion of scripts in package lsb-cprocsp-devel: prerm
Warning: Use the —scripts parameter to include the scripts.
lsb-cprocsp-devel_4.0.9921-6_all.deb generated
</вывод команды>

если вывод команды был «bash: alien: команда не найдена», то вам надо читать внимательней потребности, установить alien

# apt install alien

Устанавливаем

# dpkg -i lsb-cprocsp-devel_*.deb cprocsp-pki-*.deb

Выбор ранее не выбранного пакета lsb-cprocsp-devel.
(Чтение базы данных … на данный момент установлено 232442 файла и каталога.)
Подготовка к распаковке lsb-cprocsp-devel_4.0.9921-6_all.deb …
Распаковывается lsb-cprocsp-devel (4.0.9921-6) …
Выбор ранее не выбранного пакета cprocsp-pki-cades.
Подготовка к распаковке cprocsp-pki-cades_2.0.0-2_amd64.deb …
Распаковывается cprocsp-pki-cades (2.0.0-2) …
Выбор ранее не выбранного пакета cprocsp-pki-phpcades.
Подготовка к распаковке cprocsp-pki-phpcades_2.0.0-2_amd64.deb …
Распаковывается cprocsp-pki-phpcades (2.0.0-2) …
Выбор ранее не выбранного пакета cprocsp-pki-plugin.
Подготовка к распаковке cprocsp-pki-plugin_2.0.0-2_amd64.deb …
Распаковывается cprocsp-pki-plugin (2.0.0-2) …
Настраивается пакет lsb-cprocsp-devel (4.0.9921-6) …
Настраивается пакет cprocsp-pki-cades (2.0.0-2) …
Настраивается пакет cprocsp-pki-phpcades (2.0.0-2) …
Настраивается пакет cprocsp-pki-plugin (2.0.0-2) …
Обрабатываются триггеры для libc-bin (2.24-11+deb9u3) …

на всякий пожарный установку лучше повторить, т.к. бывали случаи что установка прошла успешно, а библиотек на месте не было

для firefox

# ln -s /opt/cprocsp/lib/amd64/libnpcades.so /usr/lib/mozilla/plugins/lib/libnpcades.so
# ln -s /opt/cprocsp/lib/amd64/libcppkcs11.so.4.0.4 /usr/lib/mozilla/plugins/lib/libcppkcs11.so

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

# ln -s /opt/cprocsp/lib/amd64/libnpcades.so /usr/lib/libnpcades.so
# ln -s /opt/cprocsp/lib/amd64/libcppcades.so /usr/lib/libcppcades.so
# ln -s /opt/cprocsp/lib/amd64/libcppkcs11.so /usr/lib/libcppkcs11.so

создаем симлинк для корректной работы связи расширения браузера с библиотекой установленного плагина

# ln -s /etc/opt/chrome/native-messaging-hosts/ru.cryptopro.nmcades.json /etc/chromium/native-messaging-hosts/ru.cryptopro.nmcades.json

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

# ln -s /etc/opt/chrome /etc/opt/chromium
# ln -s /etc/opt/chrome /etc/opt/chromium-gost

Установить Расширение
или ссылка текстом https://chrome.google.com/webstore/detail/cryptopro-extension-for-c/iifchhfnnmpdbibifmljnfjhpififfog

Проверить плагин можно
https://www.cryptopro.ru/sites/default/files/products/cades/demopage/simple.html
или
https://www.cryptopro.ru/sites/default/files/products/cades/demopage/cades_bes_sample.html

Одно из самых главных требований при работе с этим плагином, это нужно при КОПИРОВАНИИ или СОЗДАНИИ контейнера установить пинкод

Качаем прикрепленный архив
или с тындекс диска
https://yadi.sk/d/8VJFh_cFHRGRJA

Разархивируем
$ unzip IFCPlugin-3.0.0-x86_64.deb.zip

Устанавливаем
# dpkg -i IFCPlugin-3.0.0-x86_64.deb

создаем симлинк для корректной работы связи расширения браузера с библиотекой установленного плагина

# ln -s /etc/opt/chrome/native-messaging-hosts/ru.rtlabs.ifcplugin.json /etc/chromium/native-messaging-hosts/ru.rtlabs.ifcplugin.json

# mcedit /etc/ifc.cfg

log = {
level = «DEBUG»;
}

config = {
cert_from_registry = «false»;
set_user_pin = «false»;
}

params =
(
{ name = «Криптопровайдер VipNet CSP»;
alias = «VIPNet»;
type = «capi»;
provider_name = «Infotecs Cryptographic Service Provider»;
provider_num = «2»;
skip_pkcs11_list = «true»;
},

{ name = «Криптопровайдер VipNet CSP»;
alias = «VIPNet_linux»;
type = «capi_linux»;
provider_name = «Infotecs Cryptographic Service Provider»;
provider_num = «2»;
skip_pkcs11_list = «true»;
},

{ name = «Криптопровайдер КриптоПро CSP»;
alias = «CryptoPro»;
type = «capi»;
provider_name = «Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider»;
provider_num = «75»;
skip_pkcs11_list = «false»;
},

{ name = «Криптопровайдер КриптоПро Рутокен CSP»;
alias = «CryptoPro_Rutoken»;
type = «capi»;
provider_name = «GOST R 34.10-2001 Rutoken CSP»;
provider_num = «75»;
skip_pkcs11_list = «false»;
},

{ name = «Криптопровайдер Signal-COM CSP»;
alias = «SignalCom»;
type = «capi»;
provider_name = «Signal-COM CPGOST Cryptographic Provider»;
provider_num = «75»;
skip_pkcs11_list = «false»;
},

{ name = «Криптопровайдер LISSI-CSP»;
alias = «LISSI-CSP»;
type = «capi»;
provider_name = «LISSI-CSP»;
provider_num = «75»;
skip_pkcs11_list = «false»;
},

{ name = «JaCarta Криптотокен»;
alias = «JaCarta»;
type = «pkcs11»;
alg = «gost2001»;
lib_win = «jcPKCS11-2.DLL»;
lib_linux = «libjcPKCS11-2.so.2.4.0»;
lib_mac = «jcPKCS11-2»;
},

{ name = «CryptoPro CSP»;
alias = «cryptoprocsp»;
type = «pkcs11»;
alg = «gost2001»;
lib_linux = «libcppkcs11.so»;
},

{ name = «CryptoPro CSP»;
alias = «cryptoprocsp»;
type = «pkcs11»;
alg = «gost2012»;
lib_linux = «libcppkcs11.so»;
},

{ name = «Актив руТокен ЭЦП»;
alias = «ruTokenECP»;
type = «pkcs11»;
alg = «gost2001»;
lib_win = «rtpkcs11ecp.dll»;
lib_linux = «librtpkcs11ecp.so»;
lib_mac = «librtpkcs11ecp.dylib»;
}
);

Или

Заходим в каталог куда скачали архив
$ unzip ifc.cfg.zip

Копируем конфигурационный файл

# cp ifc.cfg /etc/ifc.cfg

Установить Расширение для gosuslugi.ru

Перейти в меню — Дополнительные инструменты — Расширения и включить плагин

Можно проверять !!!

На случай диагностики ошибок ifcplugin нужен будет лог /var/log/ifc/engine_logs/engine.log

  • 692 байт
    Просмотры: 1 242

  • 2.3 МБ
    Просмотры: 1 360

Последнее редактирование: 09.12.2018

26.10.2018

Общее описание выводов ошибок
[ErrorCode: 0x00000000]
\ Код ошибки 0, значит все прошло успешно

Error number 0x8009001f (2148073503).
Неправильный параметр набора ключей.
\ скорее всего нужно добавить пинкод или другой тип стандарта контейнера если ошибка возникает при копировании ключей
\ -pinsrc 12345678
\ -pindest 12345678

ERROR: SCardListReaders(NULL)
если ключ вставлен, то скорее всего либо у вас не установлены требуемые библиотеки/драйвера, либо что то мешает его распознать(какой-то пакет из состава Крипто-Про)

Проверить/отобразить USB токены можно командой
$ /opt/cprocsp/bin/amd64/list_pcsc
Примерный вывод:
Aktiv Co. Rutoken S 00 00

если получили ERROR: SCardListReaders(NULL), если ключ вставлен, то скорее всего либо у вас не установлены требуемые библиотеки/драйвера, либо что то мешает его распознать(какой-то пакет из состава Крипто-Про)

Вывести список всех ключевых носителей и контейнеров
$ /opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifyc -fqcn

<вывод команды>
CSP (Type:80) v4.0.9017 KC2 Release Ver:4.0.9944 OS:Linux CPU:AMD64 FastCode:READY:SSSE3.
AcquireContext: OK. HCRYPTPROV: 28131731
\.Aktiv Co. Rutoken S 00 00key1
OK.
Total: SYS: 0,000 sec USR: 0,000 sec UTC: 1,380 sec
[ErrorCode: 0x00000000]
</вывод команды>

Вывод всех ключевых носителей и контейнеров с отображением уникального имени
$ /opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifyc -fqcn -uniq

<вывод команды>
CSP (Type:80) v4.0.9018 KC2 Release Ver:4.0.9958 OS:Linux CPU:AMD64 FastCode:READY:SSSE3.
AcquireContext: OK. HCRYPTPROV: 16527635
\.HDIMAGEkey0 |\.HDIMAGEHDIMAGE\key0.0001174
OK.

Total: SYS: 0,000 sec USR: 0,000 sec UTC: 2,130 sec
[ErrorCode: 0x00000000]
</вывод команды>

Нужная нам информация между строками «AcquireContext: OK.» и «OK.«

Еще возможный вывод \.HDIMAGE и \.FLASH, где

\.HDIMAGE это ключевой носитель сохранен на жестком диске, вроде считывателя реестра в Windows версии. «key0» это имя ключевого контейнера на носителе.

\.FLASH

$ /opt/cprocsp/bin/amd64/csptest -keycopy -contsrc ‘\.HDIMAGEkey0’ -contdest ‘\.Aktiv Co. Rutoken S 00 00key1’ -typesrc 75 -typedest 75 -pinsrc 12345678 -pindest 12345678

<описание опций>

csptest -keycopy \ Запуск копирования
-contsrc ‘\.HDIMAGEkey0’

\ Указываем откуда копируем «\.HDIMAGE» это указатель откуда брать ключ в данном случае из локального расположения,

навроде считывателя реестра в Windows версии. «key0» это имя ключевого контейнера на носителе

-contdest ‘\.Aktiv Co. Rutoken S 00 00key1’

\ Указываем куда копируем ‘\.Aktiv Co. Rutoken S 00 00key1’ это указатель на устройство

ОБЯЗАТЕЛЬНО !!! Имя ключей должно отличаться
ОБЯЗАТЕЛЬНО !!! Имя ключей должно быть на латинице,
КАТЕГОРИЧЕСКИ не рекомендуется использовать кириллицу или любой другой алфавит отличный от латиницы

-typesrc 75 \ Тип сформированного контейнера откуда копируется по ГОСТУ где 75(ГОСТ-2001), 80(ГОСТ-2012)

-typedest 75 \ Тип сформированного контейнера куда копируется
-pinsrc 12345678 \ Пинкод источника ключевого носителя
-pindest 12345678 \ Пинкод ключевого носителя

</описание опций>

<вывод команды>

</вывод команды>

Копирование контейнера с ключами по уникальным именам на случай если имя контейнера содержит кириллицу или какие нибудь непонятные символы
$ /opt/cprocsp/bin/amd64/csptest -keycopy -contsrc ‘HDIMAGE\key0.0001174’ -contdest ‘\.Aktiv Co. Rutoken S 00 00key1’ -typesrc 75 -typedest 75

Удаление контейнера с ключами по уникальному имени
$ /opt/cprocsp/bin/amd64/csptest -keyset -delete -cont ‘HDIMAGE\key0.0001174’

*** Импорт корневого доверенного сертификата
$ /opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file ROOT.cer
Вместо ROOT.cer подставить свой корневой серитикат который вы хотите загрузить

*** Загрузка личного сертификата в хранилище в данном случае из локального считывателя
$ /opt/cprocsp/bin/amd64/csptestf -absorb -cert -pattern ‘HDIMAGE’

*** Загрузка личного сертификата в хранилище в данном случае из рутокена
$ /opt/cprocsp/bin/amd64/csptestf -absorb -cert -pattern ‘rutoken’

*** Загрузка личного сертификата в хранилище в данном случае из Флэш накопителя
$ /opt/cprocsp/bin/amd64/csptestf -absorb -cert -pattern ‘FLASH’

*** Вывод личных сертификатов в личном хранилище
$ /opt/cprocsp/bin/amd64/certmgr -list -cert -store uMy

*** Вывод субъекта и серийного номера загруженных личных сертификатов в личном хранилище
$ /opt/cprocsp/bin/amd64/certmgr -list -cert -store uMy | grep -iE «^Serial|^Subject»

*** Полный вывод загруженных сертификатов корневых удостоверяющих центров в личном хранилище
$/opt/cprocsp/bin/amd64/certmgr -list -cert -store uroot

*** Вывод субъекта и серийного номера загруженных сертификатов корневых удостоверяющих центров в личном хранилище
$ /opt/cprocsp/bin/amd64/certmgr -list -cert -store root | grep -iE «^Serial|^Subject»

*** Полный вывод загруженных сертификатов промежуточных серверов в личном хранилище
$ /opt/cprocsp/bin/amd64/certmgr -list -cert -store uca

*** Вывод субъекта и серийного номера загруженных сертификатов промежуточных серверов в личном хранилище
$ /opt/cprocsp/bin/amd64/certmgr -list -cert -store uca | grep -iE «^Serial|^Subject»

*** Загрузка личного сертификата в личное хранилище сертификатов, в данном случае из всех считывателей rutoken
/opt/cprocsp/bin/amd64/csptestf -absorb -cert -pattern ‘rutoken’

<вывод команды>
Match: SCARDrutoken_32b56458B007E72
OK.
Total: SYS: 0,000 sec USR: 0,000 sec UTC: 1,760 sec
[ErrorCode: 0x00000000]
</вывод команды>

<описание вывода>
Match: SCARDrutoken_32b56458B007E72
\Match это означает что он нашел ключевые носители удовлетворяющие условию и загрузил с него все сертификаты
\Skip это значит что этот считыватель и контейнер не соответствует запросу и будет проигнорирован
</описание вывода>

/opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file 48b19fb33bb637c88a54d19650730b67e42db121.cer

файл сертификата прикреплен

*** Экспорт в файл сертификата из хранилища
$ /opt/cprocsp/bin/amd64/certmgr -export -cert -dn «CN=» -dest ‘cert.crt’
Сначала выведет список всех имеющихся личных сертификатов, затем нужно ввести порядковый номер сертификата

— Эспорт в файл закрытого ключа из хранилища
/opt/cprocsp/bin/amd64/certmgr -export -file 1234.pfx
Сначала выведет список всех имеющихся личных сертификатов, затем нужно ввести порядковый номер сертификата

  • 1.2 КБ
    Просмотры: 872

Последнее редактирование: 29.10.2018

Blaze


29.10.2018

Вопросы по госуслугам.
1) Возможен-ли вход в Личный кабинет Госуслуг, если личный сертификат установлен в хранилище -store uMy с привязкой к контейнеру закрытого ключа, в локальном ридере HDIMAGE?
2) Или вход возможен только по rutoken с установленным пин кодом.
3) Для чего в /etc/ifc.cfg секция

Bash:

config = {
    cert_from_registry = "false";
    set_user_pin = "false";
}

и за что отвечают эти параметры?

P.S. С госзакупками проблем со входом не возникло. Спасибо.

Последнее редактирование: 29.10.2018

30.10.2018

Вопросы по госуслугам.
1) Возможен-ли вход в Личный кабинет Госуслуг, если личный сертификат установлен в хранилище -store uMy с привязкой к контейнеру закрытого ключа, в локальном ридере HDIMAGE?
2) Или вход возможен только по rutoken с установленным пин кодом.
3) Для чего в /etc/ifc.cfg секция

Bash:

config = {
    cert_from_registry = "false";
    set_user_pin = "false";
}

и за что отвечают эти параметры?

P.S. С госзакупками проблем со входом не возникло. Спасибо.

1. Да может.
2. нет, можно воспользоваться любым контейнером
3. Это либо от старого функционала который в новой версии не работает, либо планируемый на будущее и сейчас тестируется у разработчика

лучше оставить так как работает, любы изобретения могут привести к сбоям в работе

Blaze


30.10.2018

Использую Porteus 4.0 x86_64 + КриптоПро CSP 5.0.11233 (Domovoy) KC1 от 18.09.2018 + IFCPlugin-3.0.3.0-x86_64 + pcsc-lite-1.8.24-x86_64-1cf
В /etc/ifc.cfg добавил:

Bash:

  { name = "CryptoPro CSP";
    alias = "cryptoprocsp";
    type = "pkcs11";
        alg = "gost2001";
    lib_linux = "libcppkcs11.so";
  },

  { name = "CryptoPro CSP";
    alias = "cryptoprocsp";
    type = "pkcs11";
        alg = "gost2012";
    lib_linux = "libcppkcs11.so";
  },

личный сертификат установлен в хранилище -store uMy с привязкой к контейнеру закрытого ключа, в локальном ридере HDIMAGE

В Astra Linux применяется какая версия пакета pcsc-lite ?

У меня вечно, пока не закроешь страницу, висит на обращении к средству электронной подписи и бесконечно бегает анимация

При этом /var/log/ifc/engine_logs/engine.log пустой.

30.10.2018

У вас плагин версии 3.0.3 он не работает, нужен 3.0.0, проверено на многих дистрибутивах

pcsc-1.8.20, но это существенной роли не сыграет главное это версия плагина.

07.12.2018

Здравствуйте.
С плагином 3.0.3 не появлялось окно с выбором сертификата.
Установил плагин 3.0.0 окно выбора сертификата появилось. (обрадовался :) )
После выборы нужно сертификата и ввода пароля окно закрывается, вход в личный кабинет не происходит. :(

  • Screenshot_20181207_165112.png

    76.7 КБ
    Просмотры: 1 180

  • Screenshot_20181207_165145.png

    73.1 КБ
    Просмотры: 1 185

  • Screenshot_20181207_165202.png

    86.1 КБ
    Просмотры: 1 142

07.12.2018

Здравствуйте.
С плагином 3.0.3 не появлялось окно с выбором сертификата.
Установил плагин 3.0.0 окно выбора сертификата появилось. (обрадовался :) )
После выборы нужно сертификата и ввода пароля окно закрывается, вход в личный кабинет не происходит. :(

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

07.12.2018

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

Добавил

08.12.2018

Пинкод на контейнере стоит.
Вводил правильный, неправильный, оставлял пустым — результат один и тот же. Скидывает на страницу входа.

  • Screenshot_20181207_165202.png

    86.1 КБ
    Просмотры: 1 089

10.12.2018

Пинкод на контейнере стоит.
Вводил правильный, неправильный, оставлял пустым — результат один и тот же. Скидывает на страницу входа.

есть подозрение что виноват Yandex-browser, проверьте пожалуйста на интегрированном chromium или chromium-gost

15.12.2018

Andrey, [05.10.18 11:28]
[В ответ на Дмитрий Давидович]
У них кривой сертификат сервера.
Диагностировать можно так:
[root@test-x64-centos7 ~]# /opt/cprocsp/bin/amd64/csptestf -tlsc -server zakupki.gov.ru -v -nosave -savecert /tmp/t.p7b
[root@test-x64-centos7 ~]# /opt/cprocsp/bin/amd64/certmgr -list -file /tmp/t.p7b
=============================================================================
1——-
Issuer : E=uc_fk@roskazna.ru, S=г. Москва, INN=007710568760, OGRN=1047797019830, STREET=»улица Ильинка, дом 7″, L=Москва, C=RU, O=Федеральное казначейство, CN=Федеральное казначейство
Subject : INN=007710568760, OGRN=1047797019830, STREET=»ул. Проспект Мира, 105″, E=777@roskazna.ru, C=RU, S=г. Москва, L=Москва, O=Федеральное казначейство, CN=zakupki.gov.ru
Serial : 0x6F064FA71C24CD7E2CE6FAAEA927D8C7EC69A35F
SHA1 Hash : c369b560ce239beddb2fc12b4884dee1cfc923aa
SubjKeyID : 10c6d12e7cd886d022bcdfea4cbe10e32acf82bc
Signature Algorithm : ГОСТ Р 34.11/34.10-2001
PublicKey Algorithm : ГОСТ Р 34.10-2001 (512 bits)
Public key : 04 40 1b ce 0b 15 6a 4a 57 e0 1b d8 39 ee 86 83
32 70 ea db fd f5 39 c1 e6 de 3c c8 be 10 81 03
5d da 0b 3b 09 7a d3 0d 46 33 58 11 3b 20 94 99
fe 04 fe 8e e6 bc 32 53 ff 2e 71 10 8e e2 12 a1
52 cf
Not valid before : 21/12/2017 06:06:33 UTC
Not valid after : 21/03/2019 06:06:33 UTC
PrivateKey Link : No
Subject Alt Names
UPN : ▒㌴ (2.5.4.12)
URL : 0
CDP : http://crl.roskazna.ru/crl/ucfk.crl
CDP : http://crl.fsfk.local/crl/ucfk.crl
Extended Key Usage : 1.3.6.1.5.5.7.3.1

При наличии расширения Subject Alt Names RFC требует сверять имя сервера с ним, а не с полем CN. Поэтому CN=zakupki.gov.ru отброшен, а в Subject Alt Names хрень.

Andrey, [05.10.18 11:35]
Но мы сделали параметр для отключения требований RFC6125, который может подвергнуть систему опасности для атак с подменой сертификатов:
[root@test-x64-centos7 ~]# /opt/cprocsp/sbin/amd64/cpconfig -ini ‘configparameters’ -add long Rfc6125_NotStrict_ServerName_Check 1
[root@test-x64-centos7 ~]# /opt/cprocsp/bin/amd64/csptestf -tlsc -server zakupki.gov.ru -nosave
HDEContext expired: OK if file is completely downloaded
Reply status: HTTP/1.1 200 OK
1 connections, 586 bytes in 0.186 seconds;
Total: SYS: 0,020 sec USR: 0,140 sec UTC: 0,230 sec
[ErrorCode: 0x00000000]

16.12.2018

Проблема решилась установкой КриптоПро версии 4.0.9963 и действиями как написал Андрей, за что ему огромное спасибо.

user@astra:~$ /opt/cprocsp/bin/amd64/csptest -keyset -verifycontext
CSP (Type:80) v4.0.9019 KC2 Release Ver:4.0.9963 OS:Linux CPU:AMD64 FastCode:READY:AVX.
AcquireContext: OK. HCRYPTPROV: 26834115
GetProvParam(PP_NAME): Crypto-Pro GOST R 34.10-2012 KC2 CSP
Total: SYS: 0,000 sec USR: 0,000 sec UTC: 0,020 sec
[ErrorCode: 0x00000000]

user@astra:~$ sudo /opt/cprocsp/sbin/amd64/cpconfig -ini ‘configparameters’ -add long Rfc6125_NotStrict_ServerName_Check 1

user@astra:~$ sudo /opt/cprocsp/bin/amd64/csptestf -tlsc -server zakupki.gov.ru -nosave
HSECPKG_ATTR_PACKAGE_INFO not supported.
DContext expired: OK if file is completely downloaded
Reply status: HTTP/1.1 200 OK
1 connections, 589 bytes in 1.221 seconds;
Total: SYS: 0,040 sec USR: 0,320 sec UTC: 1,300 sec
[ErrorCode: 0x00000000]

17.12.2018

Для 4.0.9944
user@astra:~$ /opt/cprocsp/bin/amd64/csptest -keyset -verifycontext
CSP (Type:80) v4.0.9017 KC2 Release Ver:4.0.9944 OS:Linux CPU:AMD64 FastCode:READY:AVX.
AcquireContext: OK. HCRYPTPROV: 20066515
GetProvParam(PP_NAME): Crypto-Pro GOST R 34.10-2012 KC2 CSP
Total: SYS: 0,000 sec USR: 0,000 sec UTC: 0,030 sec
[ErrorCode: 0x00000000]
user@astra:~$ sudo /opt/cprocsp/sbin/amd64/cpconfig -ini ‘configparameters’ -add bool Rfc6125_NotStrict_ServerName_Check true
user@astra:~$ sudo /opt/cprocsp/bin/amd64/csptestf -tlsc -server zakupki.gov.ru -nosave
HSECPKG_ATTR_PACKAGE_INFO not supported.
DContext expired: OK if file is completely downloaded
Reply status: HTTP/1.1 200 OK
1 connections, 589 bytes in 0.388 seconds;
Total: SYS: 0,050 sec USR: 0,200 sec UTC: 0,450 sec
[ErrorCode: 0x00000000]

17.12.2018

есть подозрение что виноват Yandex-browser, проверьте пожалуйста на интегрированном chromium или chromium-gost

Такая же ситуация и на интегрированном chromium и на Firefox

18.01.2019

Astra Special Edition 1.6
Проблема в установке криптопро браузер плагина
в документации на wiki написано что нужно поставить пакет alien: sudo apt install alien

Этого пакета в рипозитории нет, выполнение команды выдает сообщение:

Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Пакет alien недоступен, но упомянут в списке зависимостей другого пакета.
Это может означать, что пакет отсутствует, устарел, или доступен из источников, не упомянутых в sources.list

E: Для пакета «alien» не найден кандидат на установку
root@astra-se:/home/user1/Загрузки# sudo apt install alien
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Пакет alien недоступен, но упомянут в списке зависимостей другого пакета.
Это может означать, что пакет отсутствует, устарел, или доступен из источников, не упомянутых в sources.list

Как быть в данной ситуации?

20.01.2019

Astra Special Edition 1.6
Проблема в установке криптопро браузер плагина
в документации на wiki написано что нужно поставить пакет alien: sudo apt install alien

Этого пакета в рипозитории нет, выполнение команды выдает сообщение:

Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Пакет alien недоступен, но упомянут в списке зависимостей другого пакета.
Это может означать, что пакет отсутствует, устарел, или доступен из источников, не упомянутых в sources.list

E: Для пакета «alien» не найден кандидат на установку
root@astra-se:/home/user1/Загрузки# sudo apt install alien
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Пакет alien недоступен, но упомянут в списке зависимостей другого пакета.
Это может означать, что пакет отсутствует, устарел, или доступен из источников, не упомянутых в sources.list

Как быть в данной ситуации?

Поставить и репозитария Орла

Содержание

  1. Как я настраивал новые утилиты по работе с электронной подписью в Linux
  2. Настройка «КриптоПро» CSP
  3. Настройка работы с Рутокен ЭЦП 2.0
  4. Получаем тестовый сертификат
  5. Подпись средствами «КриптоПро CSP»
  6. Rosa Crypto Tool
  7. Trusted eSign
  8. Резюме
  9. Error code 0x00000000 криптопро linux
  10. Установка сертификатов используя КриптоПРО в Linux
  11. Пример установки отдельно взятого сертификата из контейнера
  12. Инструкция по настройке и работе с Крипто-Про для государственных порталов
  13. DavidovichDV
  14. Вложения
  15. DavidovichDV
  16. Вложения
  17. Blaze
  18. DavidovichDV
  19. Blaze
  20. DavidovichDV
  21. amotash
  22. Вложения
  23. DavidovichDV
  24. amotash
  25. DavidovichDV
  26. amotash
  27. Вложения
  28. mfc31
  29. DavidovichDV
  30. renbuar
  31. renbuar

Как я настраивал новые утилиты по работе с электронной подписью в Linux

Поговорим немного про средства электронной подписи (ЭП) с использованием отечественных ГОСТ-алгоритмов в Linux. Несмотря на то, что различные средства и интерфейсы по работе с ЭП в Linux развиты даже лучше, чем в Windows, использовать их не так просто.

Такое положение вещей сохранялось последние несколько лет. Но с конца 2016 года ситуация изменилась в лучшую сторону. Появилось сразу два продукта, которые позволяют работать с электронной подписью по стандарту ГОСТ и шифрованием без использования консоли – это Rosa Crypto Tool и Trusted eSign. Оба эти продукта для работы с криптографией используют «КриптоПро CSP» для Linux. Поэтому, перед тем как обратиться к описанию самих продуктов, поговорим немного про «КриптоПро CSP».

«КриптоПро CSP» под Linux — неоднозначный продукт. С одной стороны, это одно из самых распространенных и мощных сертифицированных средств по работе с криптографией как в Windows, так и в Linux. С другой стороны, для простого человека пользоватся его интерфейсами даже в Windows не так-то просто. А в Linux доступен только консольный интерфейс. Надеюсь, что компания «КриптоПро» в курсе этой ситуации, и в будущем нас ждут новые красивые и удобные интерфейсы, как для Windows, так и для Linux.

Для настройки нам понадобится:

  • Любимый дистрибутив Linux. Я использовал Ubuntu Linux 16.04 LTS и ROSA Fresh GNOME R8;
  • Сертифицированная версия КриптоПро CSP 4.0 R2 для Windows, UNIX и macOS;
  • Рутокен ЭЦП 2.0.

Настройка «КриптоПро» CSP

Несмотря на то, что есть несколько неплохих статей по настройке «КриптоПро CSP» под Linux (например, тут или тут), я опишу здесь свой вариант. Основная причина в том, что большинство инструкций написаны для «Крипто Про CSP» версии 3.x. А современная версия «КриптоПро CSP» 4.0 не является 100% совместимой с 3.x. Дополнительная причина – всегда приятно иметь полную инструкцию по настройке в одном месте, а не переключаться с одного окна на другое.

Приступаем к настройке.

Скачиваем «КриптоПро CSP» для Linux с официального сайта КриптоПро — www.cryptopro.ru/downloads

Распаковываем «КриптоПро CSP» для Linux:

Далее у нас есть 2 варианта – автоматическая установка и установка вручную. Автоматическая установка запускается командой:

Здесь надо отдать должное разработчикам «КриптоПро» – автоматическая установка для большинства дистрибутивов отрабатывает успешно. Хотя бывают и нюансы. Например, если у вас не хватает некоторых пакетов, то установка будет успешно завершена, хотя некоторый функционал работать не будет.

Если что-то пошло не так, или вы по тем или иным причинам хотите использовать установку в ручном режиме, то вам необходимо выполнить:

Для установки пакетов в ROSA используйте urpmi, вместо dpkg -i.

Устанавливаем лицензию для «КриптоПро CSP» для Linux и проверяем, что все работает нормально:

Мы должны получить что-то вроде:

Настройка работы с Рутокен ЭЦП 2.0

Сделаем небольшое отступление. Для работы с электронной подписью и шифрованием нам не обойтись без ключевых пар и сертификатов. Надежное хранение закрытых ключей – один из основных факторов безопасности. А более надежных средств хранения, чем токен или смарт-карта, человечество пока не придумало. Я буду использовать Рутокен ЭЦП 2.0, который имеет сертификат ФСБ и поддерживает работу как с новыми, так и со старыми ГОСТами.

Для работы с токенами в ОС Linux есть масса различных средств и драйверов. Для описания всех этих средств понадобится отдельная статья. Поэтому я не буду подробно описывать, как это работает, и почему нам нужны именно эти пакеты.

Устанавливаем пакеты для работы с Рутокен ЭЦП 2.0:

Нам также необходимо установить пакеты КриптоПро CSP для поддержки работы с токенами:

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

Перед тем как перейти непосредственно к работе с подписью, надо сгенерировать ключевую пару и создать сертификат электронной подписи. Если у вас уже есть Рутокен с контейнером «КриптоПро», то эту часть можно смело пропустить.

Воспользуемся тестовым УЦ компании «КриптоПро» по адресу — https://www.cryptopro.ru/certsrv/
Создаем запрос на сертификат с параметрами по умолчанию.

Проверим, что сертификат получен успешно.

Чтобы убедиться, что «КриптоПро CSP» успешно увидел токен, выполним:

Мы должны получить что-то вроде:

Теперь проверяем, что сертификат на токене видится успешно:

Записываем в хранилище сертификатов КриптоПро информацию об этом сертификате:

Проверим, что сертификат успешно сохранился в хранилище:

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

Подпись средствами «КриптоПро CSP»

В составе «КриптоПро CSP» есть утилита csptestf, позволяющая выполнять различные криптографические операции. Как я уже писал выше, у этой утилиты есть 2 недостатка:

  • Отсутствие хорошей документации;
  • Отсутствие графического интерфейса.

Подписать можно с помощью команды:

Здесь,
my — параметр, в котором надо указать часть Common Name сертификата для подписи;
detached — позволяет создать открепленную подпись;
alg GOST94_256 — задает алгоритм хэширования, который будет использоваться при создании подписи.

Более подробную информацию о возможных параметрах вы можете получить, выполнив команду:

Такой интерфейс отлично подходит для подготовленного пользователя или для автоматизации операций в скриптах.

Поговорим теперь об утилитах, которые облегчают жизнь обычным пользователям при работе с подписью и шифрованием в Linux.

Rosa Crypto Tool

Как следует из названия, это утилита для работы с электронной подписью и шифрованием для дистрибутива ROSA Linux. В данный момент утилита доступна в репозиториях Rosa Linux и Alt Linux.

Эта утилита разрабатывается одним человеком – Михаилом Вознесенским. У нее простой, но удобный интерфейс. На данный момент утилита находится в активной разработке – с ноября 2016 года мне удалось протестировать три версии. Последняя версия, доступная на момент написание статьи — 0.2.2. Сейчас утилита поддерживает работу только с «КриптоПро CSP» для Linux, однако в ближайшее время будет добавлена поддержка других криптопровайдеров.

Что внутри? Утилита написана на Python с использованием PyQt4 для графического интерфейса.

Установить ее можно, использовав «Управление программами» в Rosa Linux.

Вставляем токен и запускаем утилиту.

Видим, что токен определился успешно и был найден наш сертификат.

Интерфейс программы настолько прост, что описывать и показывать в статье все его функции не имеет смысла. Попробуем только подписать файл.

Выбираем файл и жмем “Подписать файл”. Получаем вот такое предупреждение.

Нажимаем «OK» и получаем информацию о том, что файл был подписан успешно.

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

По сравнению с использованием «КриптоПро CSP» из консоли:

+ На порядок проще использовать;
— Отсутствуют различные параметры подписи.

Исходный код программы доступен в публичном репозитории на ABF:
abf.io/uxteam/rosa-crypto-tool-devel
Система контроля версий, которую использует «НТЦ ИТ РОСА», интегрирована в сборочную среду и базируется на Git. Можно вполне использовать любой клиент git.

Надеюсь, разработчики других отечественных дистрибутивов Linux, таких как Astra Linux, GosLinux и другие добавят в свои дистрибутивы пакеты с rosa-crypto-tool.

Trusted eSign

Второй продукт, про который мы поговорим, это Trusted eSign от компании “Цифровые технологии”. Она известна на российском рынке ИБ как разработчик средства по работе с подписью и шифрованием для ОС Windows – «КриптоАРМ».

Главное, не путать этот продукт с Trusted.eSign – web-сервисом по работе с подписью этой же компании.

Найти продукт на сайтах компании “Цифровые технологии” непросто. Небольшое описание есть в магазине http://www.cryptoarm.ru/shop/trusted_esign, продукт также можно скачать в разделе «Центр загрузки» на сайте trusted.ru — https://trusted.ru/support/downloads/?product=133

К сожалению, продукт пока доступен только в виде deb пакета для 64-битных систем. С чем связано такое ограничение, непонятно. Будем надеяться, что в ближайшее время компания выпустит и rpm пакет, а также версии для 32-битных дистрибутивов Linux.

Скачиваем с официального сайта deb-пакет и устанавливаем командой:

Запускаем Trusted eSign.

Сразу видно, что разработка не обошлась без дизайнера. Никакого сарказма. Все действия делаются просто и логично, а внешний вид радует глаз. К сожалению, большинство средств и программ в области ИБ от российских разработчиков разработаны без привлечения UX-специалистов и дизайнеров и заставляют своих пользователей страдать и плакать кровавыми слезами. Создается впечатление, что другими средства информационной безопасности просто не могут быть. “Цифровые технологии” опровергают это. Плата за красоту и удобство – необходимость платить за лицензию.

Но вернемся к подписи.

Выбираем раздел “Электронная подпись”:

Выбираем «Сертификат для подписи»:

Выбираем файлы для подписи и жмем «Подписать»:

Что под капотом? Процитирую с сайта: “Приложение создано на современном движке Electron, для вызова криптографических операций применяется библиотека OpenSSL. Совместимо с СКЗИ “КриптоПро CSP 4.0” и поддерживает все криптографические алгоритмы, реализованные в нем.” Для тех, кто ещё не в курсе Electron — это фреймворк для создания десктопных приложений на платформе node.js.

Сравним Trusted eSign с Rosa crypto tool:

+ Более удобный и красивый интерфейс
— Платная лицензия

Резюме

Подведем итог. В конце 2016 – начале 2017 года наметился неплохой прогресс в средствах по работе с электронной подписью под Linux. Информационная безопасность начинает поворачиваться к пользователю лицом, и с каждым годом требуется все меньше действий для такого простого действия, как подписать или зашифровать файл с использованием отечественных алгоритмов.

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

Такое развитие не может не радовать, особенно когда это происходит под Linux.

Источник

Error code 0x00000000 криптопро linux

Установка сертификатов используя КриптоПРО в Linux

Описание процесса установки приведено на примере дистрибутива семейства Debian (x64).
Названия файлов и директорий могут варьироваться от системы к системе.

При установке личных сертификатов не нужны права суперпользователя, и наоборот, при установке сертификатов УЦ (корневых и промежуточных) могут потребоваться такие права.

Подключите USB носитель с ключевыми контейнерами и проверьте результат команды:

Можно сразу установить личные сертификатов из всех доступных контейнеров одной командой:
/opt/cprocsp/bin/amd64/csptestf -absorb -certs
Произойдет установка сертификатов, находящихся во всех доступных в момент запуска команды контейнерах (съемных флэш-носителях, жесткого диска и т. д.) в хранилище uMy.

Пример установки отдельно взятого сертификата из контейнера

При необходимости скопируйте ключевой контейнер \.FLASH.sidorov на жесткий диск:

Наличие [ErrorCode: 0x00000000] в завершении каждой команды КриптоПРО говорит о ее успешном выполнении.

Проверьте наличие нового контейнера \.HDIMAGEsidor :

Установите личный сертификат:

Установите закрытый ключ для личного сертификата:

Скачайте корневой сертификат по ссылке выше (из поля CA cert URL ): http://cert1.ucestp.ru/estp.crt и перенесите его, например, в домашнюю папку:

Установите корневой сертификат (возможно потребуются права суперпользователя):

Проверьте установку личного сертификата:

Показать список корневых сертификатов

Посмотреть данные одного сертификата:

Удалить сертификат из хранилища:

Посмотреть лицензию КриптоПРО (возможно потребуются права суперпользователя):

Установить лицензионный ключ КриптоПРО (возможно потребуются права суперпользователя):

Источник

Инструкция по настройке и работе с Крипто-Про для государственных порталов

DavidovichDV

New member

# выполняется от суперпользователя «root» или через «sudo»
$ выполняется от обычного пользователя
\ комментарий
На новых версия Firefox работать скорее всего не будет или часть функционала будет недоступна, можно взять cryptofox с сайта крипто-про
Данные настройки были проверены на встроенном браузере в астру chromium или chromium-gost от крипто-про

Загрузить последнюю версию Крипто-Про с официального сайта

Открыть Пуск->Утилиты->Менеджер файлов mc
перейти в каталог куда загрузили архив

Распакуем архив
$ tar -xf linux-amd64_deb.tgz

Перейдем в каталог
$ cd linux-amd64_deb

получим то что на картинке ниже

Жмем клавишу Enter

Выбираем все пункты нажимая на клавишу «Пробел» переход осуществляется клавишами вниз/вверх

Жмем клавишу Enter

Жмем клавишу Enter

Жмем клавишу Enter

Жмем клавишу Enter

Вводим свой серийный номер. Регистр нужно строго соблюдать.
Жмем клавишу Enter

Жмем выбираем Exit клавишами Tab, жмем клавишу Enter, Выбираем Yes, жмем клавишу Enter

Для USB токенов нужно установить данное ПО
# apt install libpcsclite1 pcscd libccid

они все есть в репозитарии астры, ничего нигде искать дополнительно не надо

Библиотека libccid не ниже 1.4.2

Для rutoken S нужно установить драйвер c сайта производителя, лучше установить более новое
https://www.rutoken.ru/support/download/drivers-for-nix/

# dpkg -i ifd-rutokens_1.0.4_amd64.deb

Проверить USB токены можно командой
$ /opt/cprocsp/bin/amd64/list_pcsc

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

Качаем архив с плагином с официального сайта Крипто-ПРО https://www.cryptopro.ru/products/cades/plugin желательно в отдельный каталог
Заходим в каталог куда скачали архив с плагином и разархивируем

$ tar -xf cades_linux_amd64.tar.gz

Конвертируем в deb пакеты

если вывод команды был «bash: alien: команда не найдена», то вам надо читать внимательней потребности, установить alien

# apt install alien

# dpkg -i lsb-cprocsp-devel_*.deb cprocsp-pki-*.deb

на всякий пожарный установку лучше повторить, т.к. бывали случаи что установка прошла успешно, а библиотек на месте не было

# ln -s /opt/cprocsp/lib/amd64/libnpcades.so /usr/lib/mozilla/plugins/lib/libnpcades.so
# ln -s /opt/cprocsp/lib/amd64/libcppkcs11.so.4.0.4 /usr/lib/mozilla/plugins/lib/libcppkcs11.so

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

# ln -s /opt/cprocsp/lib/amd64/libnpcades.so /usr/lib/libnpcades.so
# ln -s /opt/cprocsp/lib/amd64/libcppcades.so /usr/lib/libcppcades.so
# ln -s /opt/cprocsp/lib/amd64/libcppkcs11.so /usr/lib/libcppkcs11.so

создаем симлинк для корректной работы связи расширения браузера с библиотекой установленного плагина

# ln -s /etc/opt/chrome/native-messaging-hosts/ru.cryptopro.nmcades.json /etc/chromium/native-messaging-hosts/ru.cryptopro.nmcades.json

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

# ln -s /etc/opt/chrome /etc/opt/chromium
# ln -s /etc/opt/chrome /etc/opt/chromium-gost

Одно из самых главных требований при работе с этим плагином, это нужно при КОПИРОВАНИИ или СОЗДАНИИ контейнера установить пинкод

Качаем прикрепленный архив
или с тындекс диска
https://yadi.sk/d/8VJFh_cFHRGRJA

Разархивируем
$ unzip IFCPlugin-3.0.0-x86_64.deb.zip

Устанавливаем
# dpkg -i IFCPlugin-3.0.0-x86_64.deb

создаем симлинк для корректной работы связи расширения браузера с библиотекой установленного плагина

# ln -s /etc/opt/chrome/native-messaging-hosts/ru.rtlabs.ifcplugin.json /etc/chromium/native-messaging-hosts/ru.rtlabs.ifcplugin.json

config = <
cert_from_registry = «false»;
set_user_pin = «false»;
>

params =
(
< name = «Криптопровайдер VipNet CSP»;
alias = «VIPNet»;
type = «capi»;
provider_name = «Infotecs Cryptographic Service Provider»;
provider_num = «2»;
skip_pkcs11_list = «true»;
>,

< name = «Криптопровайдер VipNet CSP»;
alias = «VIPNet_linux»;
type = «capi_linux»;
provider_name = «Infotecs Cryptographic Service Provider»;
provider_num = «2»;
skip_pkcs11_list = «true»;
>,

< name = «Криптопровайдер КриптоПро CSP»;
alias = «CryptoPro»;
type = «capi»;
provider_name = «Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider»;
provider_num = «75»;
skip_pkcs11_list = «false»;
>,

< name = «Криптопровайдер КриптоПро Рутокен CSP»;
alias = «CryptoPro_Rutoken»;
type = «capi»;
provider_name = «GOST R 34.10-2001 Rutoken CSP»;
provider_num = «75»;
skip_pkcs11_list = «false»;
>,

< name = «Криптопровайдер Signal-COM CSP»;
alias = «SignalCom»;
type = «capi»;
provider_name = «Signal-COM CPGOST Cryptographic Provider»;
provider_num = «75»;
skip_pkcs11_list = «false»;
>,

< name = «Криптопровайдер LISSI-CSP»;
alias = «LISSI-CSP»;
type = «capi»;
provider_name = «LISSI-CSP»;
provider_num = «75»;
skip_pkcs11_list = «false»;
>,

< name = «JaCarta Криптотокен»;
alias = «JaCarta»;
type = «pkcs11»;
alg = «gost2001»;
lib_win = «jcPKCS11-2.DLL»;
lib_linux = «libjcPKCS11-2.so.2.4.0»;
lib_mac = «jcPKCS11-2»;
>,

< name = «CryptoPro CSP»;
alias = «cryptoprocsp»;
type = «pkcs11»;
alg = «gost2001»;
lib_linux = «libcppkcs11.so»;
>,

< name = «CryptoPro CSP»;
alias = «cryptoprocsp»;
type = «pkcs11»;
alg = «gost2012»;
lib_linux = «libcppkcs11.so»;
>,

< name = «Актив руТокен ЭЦП»;
alias = «ruTokenECP»;
type = «pkcs11»;
alg = «gost2001»;
lib_win = «rtpkcs11ecp.dll»;
lib_linux = «librtpkcs11ecp.so»;
lib_mac = «librtpkcs11ecp.dylib»;
>
);

Заходим в каталог куда скачали архив
$ unzip ifc.cfg.zip

Копируем конфигурационный файл

# cp ifc.cfg /etc/ifc.cfg

Перейти в меню — Дополнительные инструменты — Расширения и включить плагин

На случай диагностики ошибок ifcplugin нужен будет лог /var/log/ifc/engine_logs/engine.log

Вложения

DavidovichDV

New member

Общее описание выводов ошибок
[ErrorCode: 0x00000000]
\ Код ошибки 0, значит все прошло успешно

Error number 0x8009001f (2148073503).
Неправильный параметр набора ключей.
\ скорее всего нужно добавить пинкод или другой тип стандарта контейнера если ошибка возникает при копировании ключей
\ -pinsrc 12345678
\ -pindest 12345678

ERROR: SCardListReaders(NULL)
если ключ вставлен, то скорее всего либо у вас не установлены требуемые библиотеки/драйвера, либо что то мешает его распознать(какой-то пакет из состава Крипто-Про)

Проверить/отобразить USB токены можно командой
$ /opt/cprocsp/bin/amd64/list_pcsc
Примерный вывод:
Aktiv Co. Rutoken S 00 00

если получили ERROR: SCardListReaders(NULL) , если ключ вставлен, то скорее всего либо у вас не установлены требуемые библиотеки/драйвера, либо что то мешает его распознать(какой-то пакет из состава Крипто-Про)

Вывести список всех ключевых носителей и контейнеров
$ /opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifyc -fqcn

CSP (Type:80) v4.0.9017 KC2 Release Ver:4.0.9944 OS:Linux CPU:AMD64 FastCode:READY:SSSE3.
AcquireContext: OK. HCRYPTPROV: 28131731
\.Aktiv Co. Rutoken S 00 00key1
OK.
Total: SYS: 0,000 sec USR: 0,000 sec UTC: 1,380 sec
[ErrorCode: 0x00000000]

Вывод всех ключевых носителей и контейнеров с отображением уникального имени
$ /opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifyc -fqcn -uniq

CSP (Type:80) v4.0.9018 KC2 Release Ver:4.0.9958 OS:Linux CPU:AMD64 FastCode:READY:SSSE3.
AcquireContext: OK. HCRYPTPROV: 16527635
\.HDIMAGEkey0 |\.HDIMAGEHDIMAGE\key0.0001174
OK.

Total: SYS: 0,000 sec USR: 0,000 sec UTC: 2,130 sec
[ErrorCode: 0x00000000]

Нужная нам информация между строками » AcquireContext: OK. » и » OK . «

Еще возможный вывод \.HDIMAGE и \.FLASH, где

\.HDIMAGE это ключевой носитель сохранен на жестком диске, вроде считывателя реестра в Windows версии. «key0» это имя ключевого контейнера на носителе.

$ /opt/cprocsp/bin/amd64/csptest -keycopy -contsrc ‘\.HDIMAGEkey0’ -contdest ‘\.Aktiv Co. Rutoken S 00 00key1’ -typesrc 75 -typedest 75 -pinsrc 12345678 -pindest 12345678

csptest -keycopy \ Запуск копирования
-contsrc ‘\.HDIMAGEkey0’

\ Указываем откуда копируем «\.HDIMAGE» это указатель откуда брать ключ в данном случае из локального расположения,

навроде считывателя реестра в Windows версии. «key0» это имя ключевого контейнера на носителе

-contdest ‘\.Aktiv Co. Rutoken S 00 00key1’

\ Указываем куда копируем ‘\.Aktiv Co. Rutoken S 00 00key1’ это указатель на устройство

ОБЯЗАТЕЛЬНО . Имя ключей должно отличаться
ОБЯЗАТЕЛЬНО . Имя ключей должно быть на латинице,
КАТЕГОРИЧЕСКИ не рекомендуется использовать кириллицу или любой другой алфавит отличный от латиницы

-typesrc 75 \ Тип сформированного контейнера откуда копируется по ГОСТУ где 75(ГОСТ-2001), 80(ГОСТ-2012)

-typedest 75 \ Тип сформированного контейнера куда копируется
-pinsrc 12345678 \ Пинкод источника ключевого носителя
-pindest 12345678 \ Пинкод ключевого носителя

*** Загрузка личного сертификата в хранилище в данном случае из локального считывателя
$ /opt/cprocsp/bin/amd64/csptestf -absorb -cert -pattern ‘HDIMAGE’

*** Загрузка личного сертификата в хранилище в данном случае из рутокена
$ /opt/cprocsp/bin/amd64/csptestf -absorb -cert -pattern ‘rutoken’

*** Загрузка личного сертификата в хранилище в данном случае из Флэш накопителя
$ /opt/cprocsp/bin/amd64/csptestf -absorb -cert -pattern ‘FLASH’

*** Вывод личных сертификатов в личном хранилище
$ /opt/cprocsp/bin/amd64/certmgr -list -cert -store uMy

*** Вывод субъекта и серийного номера загруженных личных сертификатов в личном хранилище
$ /opt/cprocsp/bin/amd64/certmgr -list -cert -store uMy | grep -iE «^Serial|^Subject»

*** Полный вывод загруженных сертификатов корневых удостоверяющих центров в личном хранилище
$/opt/cprocsp/bin/amd64/certmgr -list -cert -store uroot

*** Вывод субъекта и серийного номера загруженных сертификатов корневых удостоверяющих центров в личном хранилище
$ /opt/cprocsp/bin/amd64/certmgr -list -cert -store root | grep -iE «^Serial|^Subject»

*** Полный вывод загруженных сертификатов промежуточных серверов в личном хранилище
$ /opt/cprocsp/bin/amd64/certmgr -list -cert -store uca

*** Вывод субъекта и серийного номера загруженных сертификатов промежуточных серверов в личном хранилище
$ /opt/cprocsp/bin/amd64/certmgr -list -cert -store uca | grep -iE «^Serial|^Subject»

*** Загрузка личного сертификата в личное хранилище сертификатов, в данном случае из всех считывателей rutoken
/opt/cprocsp/bin/amd64/csptestf -absorb -cert -pattern ‘rutoken’

Match: SCARDrutoken_32b56458B007E72
OK.
Total: SYS: 0,000 sec USR: 0,000 sec UTC: 1,760 sec
[ErrorCode: 0x00000000]

Match: SCARDrutoken_32b56458B007E72
\Match это означает что он нашел ключевые носители удовлетворяющие условию и загрузил с него все сертификаты
\Skip это значит что этот считыватель и контейнер не соответствует запросу и будет проигнорирован

/opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file 48b19fb33bb637c88a54d19650730b67e42db121.cer

файл сертификата прикреплен

*** Экспорт в файл сертификата из хранилища
$ /opt/cprocsp/bin/amd64/certmgr -export -cert -dn «CN=» -dest ‘cert.crt’
Сначала выведет список всех имеющихся личных сертификатов, затем нужно ввести порядковый номер сертификата

— Эспорт в файл закрытого ключа из хранилища
/opt/cprocsp/bin/amd64/certmgr -export -file 1234.pfx
Сначала выведет список всех имеющихся личных сертификатов, затем нужно ввести порядковый номер сертификата

Вложения

Blaze

New member

и за что отвечают эти параметры?

P.S. С госзакупками проблем со входом не возникло. Спасибо.

DavidovichDV

New member

и за что отвечают эти параметры?

P.S. С госзакупками проблем со входом не возникло. Спасибо.

1. Да может.
2. нет, можно воспользоваться любым контейнером
3. Это либо от старого функционала который в новой версии не работает, либо планируемый на будущее и сейчас тестируется у разработчика

лучше оставить так как работает, любы изобретения могут привести к сбоям в работе

Blaze

New member

личный сертификат установлен в хранилище -store uMy с привязкой к контейнеру закрытого ключа, в локальном ридере HDIMAGE

В Astra Linux применяется какая версия пакета pcsc-lite ?

У меня вечно, пока не закроешь страницу, висит на обращении к средству электронной подписи и бесконечно бегает анимация

DavidovichDV

New member

У вас плагин версии 3.0.3 он не работает, нужен 3.0.0, проверено на многих дистрибутивах

pcsc-1.8.20, но это существенной роли не сыграет главное это версия плагина.

amotash

New member

Вложения

DavidovichDV

New member

amotash

New member

DavidovichDV

New member

amotash

New member

Вложения

mfc31

New member

DavidovichDV

New member

renbuar

New member

По данной инструкции зашел на площадки и госуслуги. Спасибо.

renbuar

New member

]# /opt/cprocsp/bin/amd64/csptestf -tlsc -server zakupki.gov.ru -v -nosave -savecert /tmp/t.p7b
[root@test-x64-centos7

]# /opt/cprocsp/bin/amd64/certmgr -list -file /tmp/t.p7b
=============================================================================
1——-
Issuer : E=uc_fk@roskazna.ru, S=г. Москва, INN=007710568760, OGRN=1047797019830, STREET=»улица Ильинка, дом 7″, L=Москва, C=RU, O=Федеральное казначейство, CN=Федеральное казначейство
Subject : INN=007710568760, OGRN=1047797019830, STREET=»ул. Проспект Мира, 105″, E=777@roskazna.ru, C=RU, S=г. Москва, L=Москва, O=Федеральное казначейство, CN=zakupki.gov.ru
Serial : 0x6F064FA71C24CD7E2CE6FAAEA927D8C7EC69A35F
SHA1 Hash : c369b560ce239beddb2fc12b4884dee1cfc923aa
SubjKeyID : 10c6d12e7cd886d022bcdfea4cbe10e32acf82bc
Signature Algorithm : ГОСТ Р 34.11/34.10-2001
PublicKey Algorithm : ГОСТ Р 34.10-2001 (512 bits)
Public key : 04 40 1b ce 0b 15 6a 4a 57 e0 1b d8 39 ee 86 83
32 70 ea db fd f5 39 c1 e6 de 3c c8 be 10 81 03
5d da 0b 3b 09 7a d3 0d 46 33 58 11 3b 20 94 99
fe 04 fe 8e e6 bc 32 53 ff 2e 71 10 8e e2 12 a1
52 cf
Not valid before : 21/12/2017 06:06:33 UTC
Not valid after : 21/03/2019 06:06:33 UTC
PrivateKey Link : No
Subject Alt Names
UPN : ▒㌴ (2.5.4.12)
URL : 0
CDP : http://crl.roskazna.ru/crl/ucfk.crl
CDP : http://crl.fsfk.local/crl/ucfk.crl
Extended Key Usage : 1.3.6.1.5.5.7.3.1
.

При наличии расширения Subject Alt Names RFC требует сверять имя сервера с ним, а не с полем CN. Поэтому CN=zakupki.gov.ru отброшен, а в Subject Alt Names хрень.

Andrey, [05.10.18 11:35]
Но мы сделали параметр для отключения требований RFC6125, который может подвергнуть систему опасности для атак с подменой сертификатов:
[root@test-x64-centos7

]# /opt/cprocsp/sbin/amd64/cpconfig -ini ‘configparameters’ -add long Rfc6125_NotStrict_ServerName_Check 1
[root@test-x64-centos7

Источник

Содержание

  1. Как я настраивал новые утилиты по работе с электронной подписью в Linux
  2. Настройка «КриптоПро» CSP
  3. Настройка работы с Рутокен ЭЦП 2.0
  4. Получаем тестовый сертификат
  5. Подпись средствами «КриптоПро CSP»
  6. Rosa Crypto Tool
  7. Trusted eSign
  8. Резюме
  9. Работа с КриптоПро на linux сервере
  10. Ссылки
  11. Лицензия
  12. Корневые сертификаты
  13. Сертификаты
  14. Список установленных сертификатов
  15. Добавление реального сертификата
  16. Добавление реального сертификата с привязкой к закрытому ключу и возможностью подписывать документы
  17. Способ с дискетой или флешкой
  18. С жесткого диска
  19. Проверка успешности установки закрытого ключа
  20. Добавление тестового сертификата
  21. Удаление сертификата
  22. Проверка сертификата
  23. Просмотр всех атрибутов сертификата
  24. Экспорт сертификатов на другую машину
  25. Подписание документа ЭЦП
  26. Проверка подписи ЭЦП
  27. Получение исходного файла
  28. Ошибка 0x80070005 отказано в доступе — что делать
  29. Отказ в доступе при восстановлении системы
  30. Другие методы устранения ошибки 0x80070005
  31. Утилита для настройки контроля доступа
  32. Ошибка 0x80070005, отказано в доступе. Как исправить?
  33. Исправление ошибки 0x80070005 с помощью subinacl.exe
  34. Появление ошибки во время восстановления системы или при создании точки восстановления
  35. Получение ошибки 0x80070005 при обновлении Windows 10 через центр обновления
  36. (Solved) How to Fix Error Code 0x80070005— A Complete Guide
  37. Steps to fix the Windows Update Error Code 0x80070005
  38. Conclusion
  39. About The Author
  40. Best Selling Products

Как я настраивал новые утилиты по работе с электронной подписью в Linux

890f324a10d3481481b3de31ae8f3e0f

Поговорим немного про средства электронной подписи (ЭП) с использованием отечественных ГОСТ-алгоритмов в Linux. Несмотря на то, что различные средства и интерфейсы по работе с ЭП в Linux развиты даже лучше, чем в Windows, использовать их не так просто.

Такое положение вещей сохранялось последние несколько лет. Но с конца 2016 года ситуация изменилась в лучшую сторону. Появилось сразу два продукта, которые позволяют работать с электронной подписью по стандарту ГОСТ и шифрованием без использования консоли – это Rosa Crypto Tool и Trusted eSign. Оба эти продукта для работы с криптографией используют «КриптоПро CSP» для Linux. Поэтому, перед тем как обратиться к описанию самих продуктов, поговорим немного про «КриптоПро CSP».

«КриптоПро CSP» под Linux — неоднозначный продукт. С одной стороны, это одно из самых распространенных и мощных сертифицированных средств по работе с криптографией как в Windows, так и в Linux. С другой стороны, для простого человека пользоватся его интерфейсами даже в Windows не так-то просто. А в Linux доступен только консольный интерфейс. Надеюсь, что компания «КриптоПро» в курсе этой ситуации, и в будущем нас ждут новые красивые и удобные интерфейсы, как для Windows, так и для Linux.

Для настройки нам понадобится:

Настройка «КриптоПро» CSP

Несмотря на то, что есть несколько неплохих статей по настройке «КриптоПро CSP» под Linux (например, тут или тут), я опишу здесь свой вариант. Основная причина в том, что большинство инструкций написаны для «Крипто Про CSP» версии 3.x. А современная версия «КриптоПро CSP» 4.0 не является 100% совместимой с 3.x. Дополнительная причина – всегда приятно иметь полную инструкцию по настройке в одном месте, а не переключаться с одного окна на другое.

Приступаем к настройке.

Скачиваем «КриптоПро CSP» для Linux с официального сайта КриптоПро — www.cryptopro.ru/downloads

Распаковываем «КриптоПро CSP» для Linux:

Далее у нас есть 2 варианта – автоматическая установка и установка вручную. Автоматическая установка запускается командой:

Здесь надо отдать должное разработчикам «КриптоПро» – автоматическая установка для большинства дистрибутивов отрабатывает успешно. Хотя бывают и нюансы. Например, если у вас не хватает некоторых пакетов, то установка будет успешно завершена, хотя некоторый функционал работать не будет.

Если что-то пошло не так, или вы по тем или иным причинам хотите использовать установку в ручном режиме, то вам необходимо выполнить:

Устанавливаем лицензию для «КриптоПро CSP» для Linux и проверяем, что все работает нормально:

Мы должны получить что-то вроде:

Настройка работы с Рутокен ЭЦП 2.0

1825c76335f44e4ea260b4fe7b668f55

Для работы с токенами в ОС Linux есть масса различных средств и драйверов. Для описания всех этих средств понадобится отдельная статья. Поэтому я не буду подробно описывать, как это работает, и почему нам нужны именно эти пакеты.

Устанавливаем пакеты для работы с Рутокен ЭЦП 2.0:

Нам также необходимо установить пакеты КриптоПро CSP для поддержки работы с токенами:

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

Перед тем как перейти непосредственно к работе с подписью, надо сгенерировать ключевую пару и создать сертификат электронной подписи. Если у вас уже есть Рутокен с контейнером «КриптоПро», то эту часть можно смело пропустить.

Воспользуемся тестовым УЦ компании «КриптоПро» по адресу — https://www.cryptopro.ru/certsrv/
Создаем запрос на сертификат с параметрами по умолчанию.

image loader

Проверим, что сертификат получен успешно.

Чтобы убедиться, что «КриптоПро CSP» успешно увидел токен, выполним:

Мы должны получить что-то вроде:

Теперь проверяем, что сертификат на токене видится успешно:

Записываем в хранилище сертификатов КриптоПро информацию об этом сертификате:

Проверим, что сертификат успешно сохранился в хранилище:

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

Подпись средствами «КриптоПро CSP»

В составе «КриптоПро CSP» есть утилита csptestf, позволяющая выполнять различные криптографические операции. Как я уже писал выше, у этой утилиты есть 2 недостатка:

Здесь,
my — параметр, в котором надо указать часть Common Name сертификата для подписи;
detached — позволяет создать открепленную подпись;
alg GOST94_256 — задает алгоритм хэширования, который будет использоваться при создании подписи.

Более подробную информацию о возможных параметрах вы можете получить, выполнив команду:

Такой интерфейс отлично подходит для подготовленного пользователя или для автоматизации операций в скриптах.

Поговорим теперь об утилитах, которые облегчают жизнь обычным пользователям при работе с подписью и шифрованием в Linux.

Rosa Crypto Tool

Как следует из названия, это утилита для работы с электронной подписью и шифрованием для дистрибутива ROSA Linux. В данный момент утилита доступна в репозиториях Rosa Linux и Alt Linux.

Эта утилита разрабатывается одним человеком – Михаилом Вознесенским. У нее простой, но удобный интерфейс. На данный момент утилита находится в активной разработке – с ноября 2016 года мне удалось протестировать три версии. Последняя версия, доступная на момент написание статьи — 0.2.2. Сейчас утилита поддерживает работу только с «КриптоПро CSP» для Linux, однако в ближайшее время будет добавлена поддержка других криптопровайдеров.

Что внутри? Утилита написана на Python с использованием PyQt4 для графического интерфейса.

Установить ее можно, использовав «Управление программами» в Rosa Linux.

image loader

Вставляем токен и запускаем утилиту.

image loader

Видим, что токен определился успешно и был найден наш сертификат.

Интерфейс программы настолько прост, что описывать и показывать в статье все его функции не имеет смысла. Попробуем только подписать файл.

Выбираем файл и жмем “Подписать файл”. Получаем вот такое предупреждение.

image loader

Нажимаем «OK» и получаем информацию о том, что файл был подписан успешно.

image loader

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

По сравнению с использованием «КриптоПро CSP» из консоли:

+ На порядок проще использовать;
— Отсутствуют различные параметры подписи.

Исходный код программы доступен в публичном репозитории на ABF:
abf.io/uxteam/rosa-crypto-tool-devel
Система контроля версий, которую использует «НТЦ ИТ РОСА», интегрирована в сборочную среду и базируется на Git. Можно вполне использовать любой клиент git.

Надеюсь, разработчики других отечественных дистрибутивов Linux, таких как Astra Linux, GosLinux и другие добавят в свои дистрибутивы пакеты с rosa-crypto-tool.

Trusted eSign

Второй продукт, про который мы поговорим, это Trusted eSign от компании “Цифровые технологии”. Она известна на российском рынке ИБ как разработчик средства по работе с подписью и шифрованием для ОС Windows – «КриптоАРМ».

Главное, не путать этот продукт с Trusted.eSign – web-сервисом по работе с подписью этой же компании.

Найти продукт на сайтах компании “Цифровые технологии” непросто. Небольшое описание есть в магазине http://www.cryptoarm.ru/shop/trusted_esign, продукт также можно скачать в разделе «Центр загрузки» на сайте trusted.ru — https://trusted.ru/support/downloads/?product=133

К сожалению, продукт пока доступен только в виде deb пакета для 64-битных систем. С чем связано такое ограничение, непонятно. Будем надеяться, что в ближайшее время компания выпустит и rpm пакет, а также версии для 32-битных дистрибутивов Linux.

Скачиваем с официального сайта deb-пакет и устанавливаем командой:

Запускаем Trusted eSign.

image loader

Сразу видно, что разработка не обошлась без дизайнера. Никакого сарказма. Все действия делаются просто и логично, а внешний вид радует глаз. К сожалению, большинство средств и программ в области ИБ от российских разработчиков разработаны без привлечения UX-специалистов и дизайнеров и заставляют своих пользователей страдать и плакать кровавыми слезами. Создается впечатление, что другими средства информационной безопасности просто не могут быть. “Цифровые технологии” опровергают это. Плата за красоту и удобство – необходимость платить за лицензию.

Но вернемся к подписи.

Выбираем раздел “Электронная подпись”:

image loader

Выбираем «Сертификат для подписи»:

image loader

Выбираем файлы для подписи и жмем «Подписать»:

image loader

Что под капотом? Процитирую с сайта: “Приложение создано на современном движке Electron, для вызова криптографических операций применяется библиотека OpenSSL. Совместимо с СКЗИ “КриптоПро CSP 4.0” и поддерживает все криптографические алгоритмы, реализованные в нем.” Для тех, кто ещё не в курсе Electron — это фреймворк для создания десктопных приложений на платформе node.js.

Сравним Trusted eSign с Rosa crypto tool:

+ Более удобный и красивый интерфейс
— Платная лицензия

Резюме

Подведем итог. В конце 2016 – начале 2017 года наметился неплохой прогресс в средствах по работе с электронной подписью под Linux. Информационная безопасность начинает поворачиваться к пользователю лицом, и с каждым годом требуется все меньше действий для такого простого действия, как подписать или зашифровать файл с использованием отечественных алгоритмов.

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

Такое развитие не может не радовать, особенно когда это происходит под Linux.

Источник

Работа с КриптоПро на linux сервере

crypto pro debian ubuntu

Ссылки

Лицензия

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

Корневые сертификаты

Просмотр корневых сертификатов

Добавление корневых сертификатов (под root) из файла cacer.p7b

Необходимо последовательно добавить все сертификаты

Сертификаты

Список установленных сертификатов

Добавление реального сертификата

Добавить только сертификат (только проверка ЭЦП):

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

Закрытый ключ состоит из шести key-файлов:

Способ с дискетой или флешкой

С жесткого диска

Поставить «минимальные» права:

Узнать реальное название контейнера:

Ассоциировать сертификат с контейнером, сертификат попадет в пользовательское хранилище My :

Если следующая ошибка, нужно узнать реальное название контейнера (см. выше):

Установить сертификат УЦ из-под пользователя root командой:

Проверка успешности установки закрытого ключа

shot 58

Добавление тестового сертификата

Ввести пароль на контейнер. По-умолчанию: 12345678

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

Проверка сертификата

Просмотр всех атрибутов сертификата

Получаем SHA 1 хеши:

В цикле извлекаем сертификаты:

Настройка openssl для поддержки ГОСТ:

В файл /etc/ssl/openssl.cnf

Экспорт сертификатов на другую машину

Экспорт самих сертификатов (если их 14):

Переносим эти файлы на машину и смотрим, какие контейнеры есть:

И как обычно, связываем сертификат и закрытый ключ:

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

shot 662

Если нет закрытого ключа, то просто ставим сертификат:

Подписание документа ЭЦП

Пример создания ЭЦП (по SHA1 Hash):

Проверка подписи ЭЦП

Для верифицирования сертификатов нужен сертификат удостоверяющего центра и актуальный список отзыва сертификатов, либо настроенный для этого revocation provider.

Корневой сертификат УЦ, список отзыва сертификата является одним из реквизитов самого сертификата.

Контрагенты когда открывают подписи в КриптоАРМ используют revocation provider, он делает проверки отзыва сертификата онлайн. Как реализована проверка в Шарепоинте не знаю. Знаю только что используется библиотека Крипто.Net

Проверка конкретной подписи из локального хранилища по его хешу:

Получение исходного файла

Получение исходного файла (сообщения):

Будет ругаться на сертификат (так как не будет проверки), но подпись удалит. Вариант с проверкой:

Источник

Ошибка 0x80070005 отказано в доступе — что делать

При попытке активации операционной системы Windows, установке системных обновлений или ее активации пользователи часто встречают ошибку «0x80070005 отказано в доступе». При этом она возникает в любой версии ОС и даже при использовании учетной записи администратора. В этой статье вы узнаете причины ее появления, а также способы устранения. Ошибка появляется и в других случаях, но решение будет одно.

Отказано в доступе

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

Когда пользователь пытается восстановить работоспособность системы, появляется сообщение 0x80070005, что говорит об отказе в доступе. В этом случае сразу же необходимо обратить внимание на установленное антивирусное программное обеспечение. Скорее всего оно блокирует попытку доступа к сохраненному архиву системы. Необходимо открыть его настройки и на время отключить его функции защиты. Такая опция есть в каждом антивирусе. После чего снова попытайтесь восстановить систему. Если выключение антивируса не дали никаких результатов, следуйте дальнейшим рекомендациям.

Нужно определить заполнение жесткого диска файлами. Если количество данных на нем близко к максимальному значению – его необходимо почистить, удалив ненужные файлы и приложения. Если процесс восстановления системы использует зарезервированную область диска, необходимо открыть к нему доступ. Чтобы это сделать:

Далее нужно найти папку «System Volume Information» и посмотреть ее атрибуты. Откройте «Панель управления», найдите раздел «Параметры папок», перейдите на «Вид» и найдите параметр «Скрывать защищенные системные…». Также нужно активировать пункт «Отображать скрытые папки». Затем в системном томе найдите папку «System Volume Information», нажмите на «Свойства» и убедитесь, что на атрибуте «Только чтение» не установлен флажок.

Другие методы устранения ошибки 0x80070005

Если проблема «0x80070005 в доступе отказано» не исчезла, необходимо попытаться выполнить выборочный запуск системы. Нужно открыть командную строку, нажав WIN+R. Введите в нее следующую команду «msconfig» и клавишу ввода. Откроется окно, где нужно будет отключить все приложения автозагрузки. Это можно сделать на вкладке «Выборочные» или «Общие приложения».

runmsconfig

Следующим шагом будет активирование службы «Теневого копирования». Снова нужно запустить командную строку (WIN+R), затем ввести уже другую команду «services.msc» и запустить ее, нажав клавишу Enter. Появится список служб, где нам необходимо найти «Теневое копирование тома». Установите для нее автоматический запуск.

run services

Еще одним эффективным методом является сброс репозитория. Для этого нам потребует загрузить ОС в режиме «Безопасный».

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

Иногда сообщение с кодом «0x80070005 нет прав для входа» возникает из-за системы защиты программ и оборудования. К примеру, для оборудований в антивирусе ESET есть специальная функция «Контроль устройств», которая и является причиной появления сообщения. В этом случае необходимо зайти в настройки антивируса и отключить эту защиту.

Утилита для настройки контроля доступа

Компания Майкрософт создала специальную утилиту SubInACL, которая отлично подходит для администрирования и настройки прав доступа к приложениям и файлам. Она предназначена для уверенных пользователей ПК и администраторов. Найти ПО можно на странице https://www.microsoft.com/en-us/download/details.aspx?id=23510. Утилита позволяет настраивать доступ к отдельным папкам, целым томам, редактировать список прав локальных пользователей и многое другое. Если в данной ошибке указан объект, к которому отказано в доступе, при помощи утилиты можно изменить права доступа к нему.

Источник

Ошибка 0x80070005, отказано в доступе. Как исправить?

Исправление ошибки 0x80070005 с помощью subinacl.exe

Этот способ решения проблемы подходит, если вы пытаетесь обновить или активировать Windows. Если у вас появляется ошибка при восстановлении системы, рекомендую сначала воспользоваться методом 2, а если уже что-то не получится, тогда можно попробовать и этот.

Путь для установки, рекомендую выбрать как можно короче, например C:subinacl (по такому пути будет показан пример инсталляции).

Далее откройте блокнот (можно и любой другой текстовый редактор) и вставляем в него следующий код:

@echo off Set OSBIT=32 IF exist «%ProgramFiles(x86)%» set OSBIT=64 set RUNNINGDIR=%ProgramFiles% IF %OSBIT% == 64 set RUNNINGDIR=%ProgramFiles(x86)% C:subinaclsubinacl.exe /subkeyreg «HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionComponent Based Servicing» /grant=»nt servicetrustedinstaller»=f @Echo Gotovo. @pause

Обратите внимание, что в коде (строка номер 7) указан путь к subinacl.exe по такому пути C:subinaclsubinacl.exe. Если вы установили программу Subinacl по другому пути, нужно будет исправить этот путь в коде.

kodggjfjktdd

Далее кликаем правой клавишей мыши по файлу subinacl.bat и в контекстном меню выбираем пункт «Запуск от имени Администратора».

hg6hjduuktyr

После успешного завершения операции, должно появиться уведомление «Gotovo» и предложение закрыть его, нажатием любой клавиши. Далее делаем перезагрузку компьютера и пробуем повторно выполнить операцию, которая раньше выдавала ошибку 0x80070005 отказано в доступе.

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

В первую очередь, при восстановлении системы и получении ошибки 0x80070005, обращаем внимание на вашу антивирусную программу. Из-за защиты компонентов антивирусом, служба восстановления Windows может не работать. Поэтому отключаем все защитные функции антивируса или можно временно его удалить, и попробовать провести процедуру. В крайнем случае, удалить антивирус.

Если это не помогло, можно попробовать следующие действия для исправления ошибки:

Получение ошибки 0x80070005 при обновлении Windows 10 через центр обновления

Нажимаем Win+R и вводим в появившуюся строку services.msc, и жмем Enter. Находим службу «Центр обновления Windows» и останавливаем её работу. Для этого нажимаем правой клавишей по службе, и в контекстном меню выбираем «Остановить».

jgvgi7yj

Идем по пути C:Windows и находим папку SoftwareDistribution. Переименуйте её в любое другое название, например SoftwareDistribution_backup.

hftdki78red

Теперь снова открываем список служб и включаем (состояние должно быть «Выполняется) службу «Центр обновления». Перезагружаем ПК и пробуем обновиться.

На этом пока всё. Если будут найдены новые методы решения ошибки 0x80070005 «Отказано в доступе», добавлю их в статью. Всем добра!

Источник

(Solved) How to Fix Error Code 0x80070005— A Complete Guide

Updated on August 26, 2022

Summary: Error Code 0x80070005—also known as ‘Access Denied’ error—is related to Windows updates. It occurs when the system or user lacks the required files or permissions to change settings at the time of Windows update. As a result, Windows update installation is aborted, and the user starts to experience issues like system slow down, abrupt system restart, and crash—Blue Screen of Death (BSOD). To recover your data lost due to any of the mentioned reasons download Stellar Data Recovery software.

free download 1

Windows updates are a critical part of the Windows Operating System. These updates bring much-required security patches, driver updates, more features, and stability for the system. While the Windows update process is seamless in most cases and for most users, there can be a case where you may see the error code 0x80070005 while installing Windows updates.

The Windows update error code indicates that the system user doesn’t have the required permission, or the system update is missing some critical files that are required for installing the update.

This may also indicate an underlying issue with your hard drive such as a bad sector that corrupts the system or update files downloaded and saved on your storage media.

Steps to fix the Windows Update Error Code 0x80070005

Follow the steps in the given sequence to fix the Windows error 0x80070005 without data loss or any further complications.

Step 1: Backup your Critical Files Immediately

Before you start fixing the error, back up your important files. In case any file is not found, follow Step 2 to learn how you can get back those missing files. Once you have backed up all the files, proceed with the next steps to fix the 0x80070005 Windows update error.

Step 2: Recover Files Lost Due to the Error Code

If by any chance you were not able to create a backup, Stellar Data Recovery software is your best bet for a secure and quick recovery of your lost files, documents, photo, videos, etc. The software can recover data from any kind of data loss scenario and from any Windows storage device like HDD, SSD, USB, etc.

Watch and follow this video guide to get back the lost files with Stellar Data Recovery software. Then copy or save the recovered files directly onto your backup drive.

Once you have all the important files in the backup, check them for any corruption. If you find your photos or videos corrupt, follow this guide to fix the drive corruption.

Step 3: Check the Disk Space

Let’s start with the basics. Windows update requires adequate storage space to apply the update successfully. So before downloading the updates, make sure your system has enough storage space to accumulate the updates.

Also, the upcoming Windows Update requires almost 7GB of free space for installation.

In case your system is running out of storage, copy data from the user-profile folders (Desktop, Documents, Music, etc.) to a different volume or external storage media.

Step 4: Use Windows Updates Troubleshooter

Windows provides a dedicated troubleshooter wizard to fix all Windows update-related issues quickly. Follow the steps to use the Windows Update Troubleshooter and fix the Windows error 0x80070005.

Windows Updates Troubleshooter Windows Troubleshooting Completed

For Windows 7 & 8

In a Windows 10 PC,

Step 5: Run SFC

SFC or System File Checker is a Windows inbuilt utility that lets you scan and repair damaged and corrupt system files that might be hindering the update installation.

SFC Command

To run the SFC scan,

Step 6: Scan for Virus and Malware

Run a malware scan using the inbuilt Windows Defender app. Make sure the app is updated. However, if you can, get a premium subscription or trial version of the popular malware scanner—Malwarebytes—to scan your system for malware infection.

After the scan, just restart your PC, then download and install the Windows Updates. If you still see the same error, manually install the Windows updates.

Step 7: Manually Update the Windows

When everything fails to fix the Windows update error code 0x80070005, follow these instructions to update your Windows manually—

Windows Update Catalog is a repository from where one can download the Windows cumulative or significant updates and install them manually—just like any other program.

If you see any error or update is not installed successfully with the manual method, reset your PC.

Final Step: Reset Windows Installation

Please note that when you reset your PC, your personal files in the C: volume are deleted—think of it as fresh Windows installation.

This option can surely fix the error code 0x80070005. So before following the below steps, backup if you haven’t already!

In case you still face a problem, reinstall Windows using the Windows installation disc.

Conclusion

Before updating Windows, always back up! While Windows update installations are mostly error free, there may be a chance that you may lose your file if the update doesn’t install successfully. This may occur due to faulty updates or access denied error. Error code 0x80070005 indicates that the user doesn’t have the required permission due to which installation has failed or aborted.

Sometimes, faulty updates delete your files. It happened during the last major Windows October 2018 update release, which deleted the ‘Document’ folder after installation. In all such scenarios, use a specialized backup or a data recovery software such as Stellar Data Recovery.

Aruna

Aruna Attri is a Senior Data Recovery Expert at Stellar®. She is a technology blogger and Windows expert. She has experience in Windows data recovery domain. She loves to troubleshoot Windows issue and write technical tips and tutorials.

Best Selling Products

WDR Pro

Stellar Data Recovery Professional software recovers files lost due to.

Data Recovery Premium Win

Stellar Data Recovery Premium for Windows offers extensive data recove.

WDR Tech

Stellar Data Recovery Technician intelligently detects critical RAID p.

box data recovery toolkit

Stellar Data Recovery Toolkit is an advanced software, trusted by tech.

Источник

Содержание

КриптоПро на debian ubuntu

Ссылки

Лицензия

Просмотр лицензии:

cpconfig -license -view

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

cpconfig -license -set <серийный_номер>

Корневые сертификаты

Просмотр корневых сертификатов

certmgr -list -store uroot

В более старых версиях вместо uroot следует использовать root:

certmgr -list -store root

Добавление корневых сертификатов (под root) из файла cacer.p7b

sudo certmgr -inst -all -store uroot -file cacer.p7b

Необходимо последовательно добавить все сертификаты

Сертификаты

Список установленных сертификатов

certmgr -list, например:

1-------
Issuer            : E=support@cryptopro.ru, C=RU, L=Moscow, O=CRYPTO-PRO LLC, CN=CRYPTO-PRO Test Center 2
Subject           : CN=test2
Serial            : 0x120007E4E683979B734018897B00000007E4E6
SHA1 Hash         : 0x71b59d165ab5ea39e4cd73384f8e7d1e0c965e81
Not valid before  : 07/09/2015  10:41:18 UTC
Not valid after   : 07/12/2015  10:51:18 UTC
PrivateKey Link   : Yes. Container  : HDIMAGE\test2.000F9C9
2-------
Issuer            : E=support@cryptopro.ru, C=RU, L=Moscow, O=CRYPTO-PRO LLC, CN=CRYPTO-PRO Test Center 2
Subject           : CN=webservertest
Serial            : 0x120007E47F1FD9AE0EDE78616600000007E47F
SHA1 Hash         : 0x255c249150efe3e48f1abb3bc1928fc8f99980c4
Not valid before  : 07/09/2015  09:56:10 UTC
Not valid after   : 07/12/2015  10:06:10 UTC
PrivateKey Link   : Yes. Container  : HDIMAGE\webserve.0012608

Добавление реального сертификата

Добавить только сертификат (только проверка ЭЦП):

certmgr -inst -file cert.cer

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

Закрытый ключ состоит из шести key-файлов:

header.key
masks2.key
masks.key
name.key
primary2.key
primary.key

Способ с дискетой или флешкой

Скопировать в корень дискеты или флэшки сертификат и приватный ключ (из каталога 999996.000, 999996 — название (alias) контейнера):

cp -R /path/to/key/999996.000 /media/flashdrive/
cp /path/to/cert/client.cer /media/flashdrive/

Выполнить команду по копированию ключа с флэшки на диск, ключ попадет в пользовательское хранилище My.

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

gate@example.com — то, что прописано в поле E сертификата (можно посмотреть командой keytool --printcert -file /path/to/cert/client.cer):

csptest -keycopy -src '\.FLASHgate@example.com' -dest '\.HDIMAGE999996'

С жесткого диска

«Ручной способ».

Скопировать приватный ключ в хранилище (контейнер), где <username> — имя пользователя linux:

cp -R /path/to/key/999996.000 /var/opt/cprocsp/keys/<username>/

Поставить «минимальные» права:

chmod 600 /var/opt/cprocsp/keys/<username>/999996.000/*

Узнать реальное название контейнера:

csptest -keyset -enum_cont -verifycontext -fqcn

Ассоциировать сертификат с контейнером, сертификат попадет в пользовательское хранилище My:

certmgr -inst -file /path/to/file/client.cer -cont '\.HDIMAGE999996'

Если следующая ошибка, нужно узнать реальное название контейнера (см. выше):

Failed to open container \.HDIMAGE<container>
[ErrorCode: 0x00000002]

Установить сертификат УЦ из-под пользователя root командой:

certmgr -inst -store uroot -file /path/to/file/CA.cer

Проверка успешности установки закрытого ключа

certmgr --list

PrivateKey Link

Если выводится PrivateKey Link: Yes. Container: HDIMAGE\999996.000D7BB, то есть и сертификат, и приватный ключ, а если выводится PrivateKey Link: No — связи нет, и использовать такой контейнер для подписи не удастся.

Источник

Добавление тестового сертификата

Добавление работает только на той же машине, и в тот же контейнер, где был сформированы следующий запрос на добавление:

cryptcp -creatrqst -dn 'cn=test' -cont '\.hdimagetest' test.csr

Ввести пароль на контейнер test123.

cryptcp -creatrqst -dn 'e=email@test.ru,cn="тест тест",c=rus,l="москва",o="текст тест"' -cont '\.hdimagemyname' myname.csr

Пароль mysecurepass

Откройте в браузере ссылку тестовый удостоверяющий центр КриптоПро

cryptcp -instcert -cont '\.hdimagetest' certnew.cer

Ввести пароль на контейнер. По-умолчанию: 12345678

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

Проверка сертификата

certmgr -list -f file.sig

Ответ:

1-------
Issuer            : E=cpca@cryptopro.ru, C=RU, L=Москва, O=ООО КРИПТО-ПРО, CN=УЦ KPИПTO-ПPO
Subject           : E=info@site.ru, C=RU, L=г. Москва, O="ООО ""Верес""", OU=Руководство, CN=Иванов Иван Иванович, T=Генеральный директор
Serial            : 0x75F5C86A000D00016A5F
SHA1 Hash         : 0x255c249150efe3e48f1abb3bc1928fc8f99980c4
Not valid before  : 08/12/2014  09:04:00 UTC
Not valid after   : 08/12/2019  09:14:00 UTC
PrivateKey Link   : No

Подписание пустого файла (размер 0) проходит успешно, но при просмотре сертификатов этого файла выдается ошибка:

Can't open certificate store: '/tmp/tmp.G8cd13vzfZ.sig'.
Error: No certificate found.
/dailybuilds/CSPbuild/CSP/samples/CPCrypt/Certs.cpp:312: 0x2000012D
[ErrorCode: 0x2000012d]

Будьте внимательны!

Просмотр всех атрибутов сертификата

В cryptcp нет необходимых инструментов для получения всех атрибутов сертификата. Поэтому следует использовать openssl, но настроив его.

Получаем SHA 1 хеши:

certmgr -list -f file.sig | grep 'SHA1 Hash'

В цикле извлекаем сертификаты:

cryptcp -nochain -copycert -thumbprint 255c249150efe3e48f1abb3bc1928fc8f99980c4 -f file.sig -df certificate.der -der
openssl x509 -in certificate.der -inform der -text -noout

Настройка openssl для поддержки ГОСТ:

В файл /etc/ssl/openssl.cnf

openssl_conf = openssl_def # Это в начало файла
#Все что ниже в конец
[openssl_def]
engines = engine_section
 
[engine_section]
gost = gost_section
 
[gost_section]
engine_id = gost
dynamic_path = /usr/lib/ssl/engines/libgost.so # заменить реальным файлом
default_algorithms = ALL
CRYPT_PARAMS = id-Gost28147-89-CryptoPro-A-ParamSet

Проверка:

openssl ciphers | tr ":" "n" | grep -i gost
GOST2001-GOST89-GOST89
GOST94-GOST89-GOST89

Экспорт сертификатов на другую машину

Закрытые ключи к сертификатам находятся тут: /var/opt/cprocsp/keys. Поэтому эти ключи переносятся просто: создаем архив и переносим на нужную машину в тот же каталог.

Экспорт самих сертификатов (если их 14):

for i in `seq 1 14`; do echo $i | certmgr -export -dest $i.cer; done

Переносим эти файлы на машину и смотрим, какие контейнеры есть:

csptest -keyset -enum_cont -verifycontext -fqcn

И как обычно, связываем сертификат и закрытый ключ:

certmgr -inst -file 1.cer -cont '\.HDIMAGEcontainer.name'

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

Can not install certificate
Public keys in certificate and container are not identical

Если все успешно:

Если нет закрытого ключа, то просто ставим сертификат:

certmgr -inst -file 1.cer

Подписание документа ЭЦП

cryptcp -sign (КПС1) -nochain -pin pincode src.txt dest.txt.sig
  • nochain — отменяет проверку цепочки сертификатов

  • pin — пин-код

  • КПС1 — критерий поиска сертификата

Пример создания ЭЦП (по SHA1 Hash):

cryptcp -sign -thumbprint 255c249150efe3e48f1abb3bc1928fc8f99980c4 -nochain -pin test test.txt test.txt.sig
[ReturnCode: x] Описание Возвращаемый код завершения в баше $?
0 успешно 0
0x8010006b Введен неправильный PIN 107
0x2000012d Сертификат не найден 45
0x20000065 Не удалось открыть файл 101

Проверка подписи ЭЦП

Для верифицирования сертификатов нужен сертификат удостоверяющего центра и актуальный список отзыва сертификатов,
либо настроенный для этого revocation provider.

Корневой сертификат УЦ, список отзыва сертификата является одним из реквизитов самого сертификата.

Контрагенты когда открывают подписи в КриптоАРМ используют revocation provider, он делает проверки отзыва сертификата онлайн.
Как реализована проверка в Шарепоинте не знаю. Знаю только что используется библиотека Крипто.Net

cryptcp -verify -nochain

Проверка конкретной подписи из локального хранилища по его хешу:

cryptcp -verify -thumbprint 255c249150efe3e48f1abb3bc1928fc8f99980c4 -nochain test.txt.sig

Проверить, взяв сертификат из file1.sig, подпись файла file2.sig. Практически, надо использовать один и тот же файл:

cryptcp -verify -norev -f file1.sig file2.sig

Ответ:

Certificates found: 2
Certificate chains are checked.
Folder './':
file.xls.sig... Signature verifying...
Signer: Старший инженер, Иванов Иван Иванович, Отдел закупок, ООО «Верес», Москва, RU, info@site.ru
 Signature's verified.
Signer: Генеральный директор, Сидоров Иван Петрович, Руководство, ООО «Кемоптика», Москва, RU, info@site.ru
 Signature's verified.
[ReturnCode: 0]

Результат:

[ReturnCode: x] Текст Описание Возвращаемый код завершения в баше $?
0 Успешно 0
0x80091004 Invalid cryptographic message type Неправильный формат файла 4
0x80091010 The streamed cryptographic message is not ready to return data Пустой файл 16

Получение исходного файла

Получение исходного файла (сообщения):

cryptcp -verify -nochain file.sig file.txt

Будет ругаться на сертификат (так как не будет проверки), но подпись удалит. Вариант с проверкой:

cryptcp -verify -nochain -f file.sig file.sig file.txt

Настройка службы точного времени

apt-get install ntp ntpdate

Необходимо добавить сервера:

/etc/ntp.conf
# You do need to talk to an NTP server or two (or three).
#server ntp.your-provider.example
server ntp1.stratum2.ru
server ntp2.stratum2.ru

Ссылка

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

Читайте также:

  • Error code 0x0 0x2e3825e7 n
  • Error code 0cx000014c
  • Error code 099 canon
  • Error code 07xe
  • Error code 0722

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии