Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

2 Страницы12>
Опции
К последнему сообщению К первому непрочитанному
Offline kesam  
#1 Оставлено : 20 декабря 2024 г. 13:01:45(UTC)
kesam

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

Группы: Участники
Зарегистрирован: 20.12.2024(UTC)
Сообщений: 7
Российская Федерация
Откуда: Иркутск

Здравствуйте. Глобально стоит задача законнектиться с ДМДК через php с рабочей машины. Сразу оговорюсь, что в линуксе и сертификатах полный ноль, рассчитывал все сделать по инструкциям. Тем не менее:

1. Через "подсистемы Windows для Linux" на 10 винду поставлена Ubuntu 24
2. Поставлены apache2, php 8.3, mySql, тестовый домен
3. По инструкции пропатчена и скомпилирована библиотека libphpcades.so, прописаны симлинки. Классы CPStore, CPSigner создаются в php-скрипте, т.е. php подхватил саму библиотеку
4. Скопирован контейнер с флешки в /var/opt/cprocsp/keys/kesam/eksion.000, через команду вроде виден
Код:

/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifycontext -fqcn
CSP (Type:80) v5.0.10013 KC1 Release Ver:5.0.13000 OS:Linux CPU:AMD64 FastCode:READY:AVX,AVX2.
AcquireContext: OK. HCRYPTPROV: 23069011
\\.\HDIMAGE\eksion
OK.
Total: SYS: 0.000 sec USR: 0.000 sec UTC: 0.010 sec
[ErrorCode: 0x00000000]


5. Установлен сертификат, привязан к указанному выше контейнеру
Код:

/opt/cprocsp/bin/amd64/certmgr -inst -file eksion.cer -cont '\\.\HDIMAGE\eksion'

6. Контейнер продублирован в /var/opt/cprocsp/keys/www-data (если этого не сделать, то php-скрипт вообще сертификатов не видит)
Код:

cp -R /var/opt/cprocsp/keys/kesam/eksion.000 /var/opt/cprocsp/keys/www-data/
chown -R www-data:www-data /var/opt/cprocsp/keys/www-data/


Теперь о проблемах:
во-первых не подписывается файл в самом линуксе (у файла test.txt права 777)
Код:

touch ./test.txt
cryptcp -signf -dn E=lancevadarya@eksion.ru ./test.txt
/opt/cprocsp/bin/amd64/cryptcp -signf -dn E=lancevadarya@eksion.ru ./test.txt
CryptCP 5.0 (c) "Crypto-Pro", 2002-2024.
Command prompt Utility for file signature and encryption.

The following certificate will be used:
RDN:381255120150, 3812997803, 1233800016636, 20297471867, ДИРЕКТОР, ПОПОВ, АЛЕКСАНДР СЕРГЕЕВИЧ, lancevadarya@eksion.ru, "ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ ""ЛОМБАРД ЭКСИОН""", "ООО ""ЛОМБАРД ЭКСИОН""", "УЛ. ПИСКУНОВА, СТР. 122", Г. ИРКУТСК, 38 ИРКУТСКАЯ ОБЛ., RU
Valid from 05.04.2024 05:42:20 to 05.12.2037 05:42:20

Certificate chains are checked.
Folder './':
./test.txt... Signing the data...
Error: Access denied.

../../../../CSPbuild/CSP/samples/CPCrypt/DSign.cpp:433: 0x80090010
[ErrorCode: 0x80090010]


Во-вторых php-скрипт https://docs.cryptopro.r...hpcades/phpcades-samples не работает по умолчанию: падает в пустую страницу без ошибок ERR_EMPTY_RESPONSE в этом месте кода:
Код:
$sm = $sd->Sign($signer, 0, ENCODE_BASE64);

Если попробовать заменить ее на
Код:
$sm = $sd->SignCades($signer, CADES_BES, true, 0);

то выдается подпись, и следом сразу ошибка Invalid Signature. (0x80090006) в месте, где
Код:
$sd->Verify($sm, 0, VERIFY_SIGNATURE_ONLY);


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

P.S. Оказываете ли вы платную поддержку по настройке машины удаленно (например через AnyDesc)? Если да, то куда обращаться?

Отредактировано пользователем 20 декабря 2024 г. 13:13:46(UTC)  | Причина: Не указана

Offline Русев Андрей  
#2 Оставлено : 23 декабря 2024 г. 17:44:01(UTC)
Русев Андрей

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

Группы: Администраторы, Участники
Зарегистрирован: 16.04.2008(UTC)
Сообщений: 1,445

Сказал(а) «Спасибо»: 37 раз
Поблагодарили: 577 раз в 401 постах
Здравствуйте. Посмотрите в системный журнал (journalctl), возможно, у вас истекла лицензия или срок действия закрытого ключа. Плюс под боевым пользователем (www-data) можно проверить так:
Код:
/opt/cprocsp/bin/amd64/csptest -keyset -check -container '\\.\HDIMAGE\eksion'
Официальная техподдержка. Официальная база знаний.
Offline kesam  
#3 Оставлено : 24 декабря 2024 г. 11:18:31(UTC)
kesam

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

Группы: Участники
Зарегистрирован: 20.12.2024(UTC)
Сообщений: 7
Российская Федерация
Откуда: Иркутск

Спасибо за ответ,но:

Код:

kesam@RENDERFARM:~$ journalctl
No journal files were found.
-- No entries --

На WSL однако не работает ((

команды выдают вот что:

Код:

kesam@RENDERFARM:/opt/cprocsp/bin/amd64/csptest -keyset -check -container '\\.\HDIMAGE\eksion1'
CSP (Type:80) v5.0.10013 KC1 Release Ver:5.0.13000 OS:Linux CPU:AMD64 FastCode:READY:AVX,AVX2.
AcquireContext: OK. HCRYPTPROV: 24170867
GetProvParam(PP_NAME): Crypto-Pro GOST R 34.10-2012 KC1 CSP
Container name: "eksion1"
Check header passed.
Signature key is not available.
Exchange key is available. HCRYPTKEY: 0x17535c3
Symmetric key is not available.
UEC key is not available.
License: Cert without license
Crypto-Pro GOST R 34.10-2012 KC1 CSP requests container password
Type password:
../../../../CSPbuild/CSP/samples/csptest/ctkey.c:2849:Check key failed.
Error 0x80090010: Access denied.
Total: SYS: 0.000 sec USR: 0.020 sec UTC: 11.330 sec
[ErrorCode: 0x80090010]


Код:

kesam@RENDERFARM: certmgr -list
Certmgr Ver:5.0.13000 OS:Linux CPU:AMD64 (c) "Crypto-Pro", 2007-2024.
Program for managing certificates, CRLs and stores.
=============================================================================
1-------
Issuer              : C=RU, S=77 г. Москва, L=г. Москва, STREET="ул. Неглинная, д. 12", O=Банк России, CN=Центральный банк Российской Федерации, ОГРН=1037700013020, ИНН ЮЛ=7702235133
Subject             : скрытые данные
Serial              : скрытые данные
SHA1 Thumbprint     : 8fdd366992027cb6906c752405c1aa58db72338f
SubjectKeyID        : ce4a6c0d7433f891a8452247715fa62bf054fa34
Signature Algorithm : ГОСТ Р 34.11-2012/34.10-2012 256 бит
PublicKey Algorithm : ГОСТ Р 34.10-2012 256 бит (512 bits)
Not valid before    : 05/04/2024 05:42:20 UTC
Not valid after     : 05/12/2037 05:42:20 UTC
PrivateKey Link     : Yes
Container           : HDIMAGE\\eksion1.000\F823
Provider Name       : Crypto-Pro GOST R 34.10-2012 KC1 CSP
Provider Info       : Provider Type: 80, Key Spec: 1, Flags: 0x0
Identification Kind : Personal presence
CA cert URL         : http://crl1.ca.cbr.ru/aucbr-D944F67B23B815C9803690ECFE34B2C5F09652A2.cer
CA cert URL         : http://crl2.ca.cbr.ru/aucbr-D944F67B23B815C9803690ECFE34B2C5F09652A2.cer
CA cert URL         : ldap://crl1.ca.cbr.ru/cn=aucbr-D944F67B23B815C9803690ECFE34B2C5F09652A2,c=ru?cACertificate
CA cert URL         : ldap://crl2.ca.cbr.ru/cn=aucbr-D944F67B23B815C9803690ECFE34B2C5F09652A2,c=ru?cACertificate
OCSP URL            : http://tsp1.ca.cbr.ru/ocsp-2023
OCSP URL            : http://tsp2.ca.cbr.ru/ocsp-2023
CDP                 : http://crl1.ca.cbr.ru/aucbr-D944F67B23B815C9803690ECFE34B2C5F09652A2.crl
CDP                 : http://crl2.ca.cbr.ru/aucbr-D944F67B23B815C9803690ECFE34B2C5F09652A2.crl
CDP                 : ldap://crl1.ca.cbr.ru/cn=aucbr-D944F67B23B815C9803690ECFE34B2C5F09652A2,c=ru?certificateRevocationList
CDP                 : ldap://crl2.ca.cbr.ru/cn=aucbr-D944F67B23B815C9803690ECFE34B2C5F09652A2,c=ru?certificateRevocationList
Extended Key Usage  : 1.3.6.1.5.5.7.3.2 Проверка подлинности клиента
                      1.3.6.1.5.5.7.3.4 Защищенная электронная почта
=============================================================================


Закрытый ключ есть и он действителен до июля 2025...
Еще почему-то команда пишет, что Signature key is not available в контейнере, хотя в сертификате все норм. Так и должно быть? Программа "Инструменты криптопро" подписывает этим сертификатом файлы, как и плагин в браузере. Что-то с этим можно сделать?

P.S. Все больше склоняюсь к мысли, что на WSL ставить Ubuntu было плохой и идеей: она какая-то вся кастрированная и со своими приколами. Наверное попробую поставить чистую на отдельный диск и попробую еще раз.

Отредактировано пользователем 24 декабря 2024 г. 12:39:13(UTC)  | Причина: Не указана

Offline Русев Андрей  
#4 Оставлено : 24 декабря 2024 г. 16:19:47(UTC)
Русев Андрей

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

Группы: Администраторы, Участники
Зарегистрирован: 16.04.2008(UTC)
Сообщений: 1,445

Сказал(а) «Спасибо»: 37 раз
Поблагодарили: 577 раз в 401 постах
Автор: kesam Перейти к цитате
Код:
kesam@RENDERFARM:/opt/cprocsp/bin/amd64/csptest -keyset -check -container '\\.\HDIMAGE\eksion1'
CSP (Type:80) v5.0.10013 KC1 Release Ver:5.0.13000 OS:Linux CPU:AMD64 FastCode:READY:AVX,AVX2.
AcquireContext: OK. HCRYPTPROV: 24170867
GetProvParam(PP_NAME): Crypto-Pro GOST R 34.10-2012 KC1 CSP
Container name: "eksion1"
Check header passed.
Signature key is not available.
Exchange key is available. HCRYPTKEY: 0x17535c3
Symmetric key is not available.
UEC key is not available.
License: Cert without license
Crypto-Pro GOST R 34.10-2012 KC1 CSP requests container password
Type password:
../../../../CSPbuild/CSP/samples/csptest/ctkey.c:2849:Check key failed.
Error 0x80090010: Access denied.
Total: SYS: 0.000 sec USR: 0.020 sec UTC: 11.330 sec
[ErrorCode: 0x80090010]
Надо чинить это. WSL ни при чём, но владеть своим инструментом надо: получить системные журналы, например. Если не можете, то можно переключить их печать прямо в консоль:
Код:
/opt/cprocsp/sbin/amd64/cpconfig -loglevel csp -mask 0x1000
После этого снова запускайте команду csptest с командой выше.
Официальная техподдержка. Официальная база знаний.
Offline kesam  
#5 Оставлено : 25 декабря 2024 г. 11:21:50(UTC)
kesam

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

Группы: Участники
Зарегистрирован: 20.12.2024(UTC)
Сообщений: 7
Российская Федерация
Откуда: Иркутск

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

Надо чинить это. WSL ни при чём, но владеть своим инструментом надо: получить системные журналы, например. Если не можете, то можно переключить их печать прямо в консоль:
Код:
/opt/cprocsp/sbin/amd64/cpconfig -loglevel csp -mask 0x1000
После этого снова запускайте команду csptest с командой выше.


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

Код:

kesam@RENDERFARM:~$ /opt/cprocsp/sbin/amd64/cpconfig -loglevel csp -mask 0x1000
Error code:-2146893808
Access denied.

Отредактировано пользователем 25 декабря 2024 г. 11:22:23(UTC)  | Причина: Не указана

Offline Русев Андрей  
#6 Оставлено : 25 декабря 2024 г. 14:17:39(UTC)
Русев Андрей

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

Группы: Администраторы, Участники
Зарегистрирован: 16.04.2008(UTC)
Сообщений: 1,445

Сказал(а) «Спасибо»: 37 раз
Поблагодарили: 577 раз в 401 постах
Автор: kesam Перейти к цитате
Код:

kesam@RENDERFARM:~$ /opt/cprocsp/sbin/amd64/cpconfig -loglevel csp -mask 0x1000
Error code:-2146893808
Access denied.
Надо запускать под root / sudo.

Официальная техподдержка. Официальная база знаний.
Offline kesam  
#7 Оставлено : 26 декабря 2024 г. 5:23:49(UTC)
kesam

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

Группы: Участники
Зарегистрирован: 20.12.2024(UTC)
Сообщений: 7
Российская Федерация
Откуда: Иркутск

Спасибо за терпение, все время забываю про этот sudo. Зашел под root
Код:


root@RENDERFARM:~# sudo /opt/cprocsp/sbin/amd64/cpconfig -loglevel csp -mask 0x1000

root@RENDERFARM:~# sudo /opt/cprocsp/bin/amd64/csptest -keyset -check -container '\\.\HDIMAGE\eksion1'
CSP (Type:80) v5.0.10013 KC1 Release Ver:5.0.13000 OS:Linux CPU:AMD64 FastCode:READY:AVX,AVX2.
<csp>InitCarrierCnt!kcar_open fail (0x80090016)
../../../../CSPbuild/CSP/samples/csptest/ctkey.c:1181:AcquireContext("\\.\HDIMAGE\eksion1")
Error 0x80090016: Keyset does not exist
Total: SYS: 0.000 sec USR: 0.000 sec UTC: 0.010 sec
[ErrorCode: 0x80090016]
Offline Русев Андрей  
#8 Оставлено : 26 декабря 2024 г. 10:44:54(UTC)
Русев Андрей

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

Группы: Администраторы, Участники
Зарегистрирован: 16.04.2008(UTC)
Сообщений: 1,445

Сказал(а) «Спасибо»: 37 раз
Поблагодарили: 577 раз в 401 постах
Автор: kesam Перейти к цитате
Спасибо за терпение, все время забываю про этот sudo. Зашел под root
Код:
root@RENDERFARM:~# sudo /opt/cprocsp/sbin/amd64/cpconfig -loglevel csp -mask 0x1000

root@RENDERFARM:~# sudo /opt/cprocsp/bin/amd64/csptest -keyset -check -container '\\.\HDIMAGE\eksion1'
CSP (Type:80) v5.0.10013 KC1 Release Ver:5.0.13000 OS:Linux CPU:AMD64 FastCode:READY:AVX,AVX2.
<csp>InitCarrierCnt!kcar_open fail (0x80090016)
../../../../CSPbuild/CSP/samples/csptest/ctkey.c:1181:AcquireContext("\\.\HDIMAGE\eksion1")
Error 0x80090016: Keyset does not exist
Total: SYS: 0.000 sec USR: 0.000 sec UTC: 0.010 sec
[ErrorCode: 0x80090016]
А вот -keyset -check надо запускать под тем пользователем, чьи ключи (без sudo), иначе они закономерно не будут видны.

Официальная техподдержка. Официальная база знаний.
Offline kesam  
#9 Оставлено : 26 декабря 2024 г. 12:23:59(UTC)
kesam

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

Группы: Участники
Зарегистрирован: 20.12.2024(UTC)
Сообщений: 7
Российская Федерация
Откуда: Иркутск

Я все-таки пока что отказался от идеи мучаться с WSL и поставил чистую Убунту (получится на чистой - попробую еще разок). К слову, файлы с консоли теперь подписываются.


Код:

kesam@linux:~/Downloads$ cryptcp -signf -q10 ./test.txt
CryptCP 5.0 (c) "КРИПТО-ПРО", 2002-2024.
Утилита командной строки для подписи и шифрования файлов.
Пожалуйста, выберите нужный сертификат (введите его номер и нажмите [Enter]).

#1: Субъект:бла-бла-бла
Действителен с 05.04.2024 05:42:20 по 05.12.2037 05:42:20

#2: Субъект:копия
Действителен с 18.07.2024 09:55:17 по 18.12.2037 09:55:17


Номер:1
Цепочки сертификатов проверены.
Папка './':
./test.txt... Подпись данных...    
    
Подписанное сообщение успешно создано.
[ErrorCode: 0x00000000]




Но вот в php все та же история. Явно я что-то не догоняю с пользователями, сертификатами и правами. Зато стал доступен journalact. Итак, выполняю команду под разными пользователями и получаю одинаковы результат, логи прилагаются. Правда, я так и не понял как выполнять команды от www-data без sudo (ведь такого пользователя вроде бы нет в системе, он как-то от апача цепляется), поэтому выполнил с sudo.

Код:

kesam@linux:~/Downloads$ /opt/cprocsp/bin/amd64/csptest -keyset -check -container '\\.\HDIMAGE\eksion1'

CSP (Type:80) v5.0.10013 KC1 Release Ver:5.0.13000 OS:Linux CPU:AMD64 FastCode:READY:AVX. DISABLED:RSA;
../../../../CSPbuild/CSP/samples/csptest/ctkey.c:1181:AcquireContext("\\.\HDIMAGE\eksion1")
Error 0x80090016: Набор ключей не существует 
Total: SYS: 0,000 sec USR: 0,000 sec UTC: 0,010 sec
[ErrorCode: 0x80090016]

kesam@linux:~/Downloads$ sudo -u www-data /opt/cprocsp/bin/amd64/csptest -keyset -check -container '\\.\HDIMAGE\eksion1'

CSP (Type:80) v5.0.10013 KC1 Release Ver:5.0.13000 OS:Linux CPU:AMD64 FastCode:READY:AVX. DISABLED:RSA;
../../../../CSPbuild/CSP/samples/csptest/ctkey.c:1181:AcquireContext("\\.\HDIMAGE\eksion1")
Error 0x80090016: Набор ключей не существует 
Total: SYS: 0,000 sec USR: 0,000 sec UTC: 0,010 sec
[ErrorCode: 0x80090016]

kesam@linux:~/Downloads$ journalctl --since "2024-12-26 17:02:00"

дек 26 17:02:24 linux csptest[1496319]: <csp>InitCarrierCnt!kcar_open fail (0x80090016)
дек 26 17:02:24 linux csptest[1496319]: <capi10>CryptAcquireContextA!failed: LastError = 0x80090016
дек 26 17:02:38 linux sudo[1498612]:    kesam : TTY=pts/2 ; PWD=/home/kesam/Downloads ; USER=www-data ; COMMAND=/opt/cprocsp/bin/amd64/csptest -keyset -ch>

дек 26 17:02:38 linux sudo[1498612]: pam_unix(sudo:session): session opened for user www-data(uid=33) by kesam(uid=1000)
дек 26 17:02:38 linux csptest[1498614]: <csp>InitCarrierCnt!kcar_open fail (0x80090016)
дек 26 17:02:38 linux csptest[1498614]: <capi10>CryptAcquireContextA!failed: LastError = 0x80090016
дек 26 17:02:38 linux sudo[1498612]: pam_unix(sudo:session): session closed for user www-data

Отредактировано пользователем 26 декабря 2024 г. 12:36:32(UTC)  | Причина: Не указана

Offline Русев Андрей  
#10 Оставлено : 26 декабря 2024 г. 16:04:23(UTC)
Русев Андрей

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

Группы: Администраторы, Участники
Зарегистрирован: 16.04.2008(UTC)
Сообщений: 1,445

Сказал(а) «Спасибо»: 37 раз
Поблагодарили: 577 раз в 401 постах
Ключи лежат в папке, соответствующей пользователю. В прошлый раз вы их скопировали к пользователю www-data, в этот - вероятно, нет:
Код:
cp -R /var/opt/cprocsp/keys/kesam/eksion.000 /var/opt/cprocsp/keys/www-data/
chown -R www-data /var/opt/cprocsp/keys/www-data/
Официальная техподдержка. Официальная база знаний.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
2 Страницы12>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.