Есть ли где описание, как настроить работу КриптоПРО 5.* с Рутокен ЭЦП по pkcs11? Плагин Рутокена и Госуслуг удалось настроить, а вот cptools показывает пустой список считывателей.
Какую версию СКЗИ Вы используете?
Каким образом Вы производите установку СКЗИ - запускаете ли постинсталл сценарий или обходитесь только копированием файла конфигурации?
Какой токен Вы используете?
Сама библиотека устанавливается:
$ ls -l /opt/cprocsp/lib/amd64 | grep -i pkcs
lrwxrwxrwx 1 root root 20 июн 3 2022 libcppkcs11.so → libcppkcs11.so.4.0.5
lrwxrwxrwx 1 root root 20 июн 3 2022 libcppkcs11.so.4 → libcppkcs11.so.4.0.5
-rw-r–r-- 1 root root 1431260 июн 3 2022 libcppkcs11.so.4.0.5
Версия 5.0.12000 с репозитория linuxbuh, немного модифицированного под ванильную генту: При распаковке cryptopro проблемы с правами distdir · Issue #5 · linuxbuh/linuxbuh · GitHub
Запускаю сервис /etc/init.d/cprocsp start
и после bash /etc/opt/cprocsp/cprocsp_postinstal_all_scripts.sh
Использую Рутокен ЭЦП 3.0
Библиотека установлена, USE-флаги: cptools ifd-rutokens lsb-capilite lsb-kc1 lsb-kc2 lsb-pkcs11 lsb-rcrypt lsb-rdr noarch-lsb-base noarch-lsb-ca-certs rdr-cryptoki rdr-gui-gtk rdr-pcsc rdr-rutoken -apache-modssl -curl -ipsec-genpsk -ipsec-ike -lsb-rdr-accord -lsb-rdr-ancud -lsb-rdr-crypton -lsb-rdr-maxim -lsb-rdr-sobol -lsb-rdr-vityaz -noarch-altlinux -noarch-drv-devel -noarch-ipsec-devel -noarch-lsb-devel -noarch-lsb-import-ca-certs -noarch-suse -noarch-xer2print -rdr-cloud -rdr-cloud-gtk -rdr-cpfkc -rdr-edoc -rdr-emv -rdr-esmart -rdr-infocrypt -rdr-inpaspot -rdr-jacarta -rdr-kst -rdr-mskey -rdr-novacard -rdr-relay -rdr-rosan -src-accord_random -src-cprocsp-drv -src-ipsec-esp -src-sobol -stunnel
Но я сейчас смотрю, и /etc/init.d/cprocsp просто не рабочий, из-за отсутствия команд pidofproc
и start_daemon
.
P.S. Скрипт /etc/init.d/cprocsp я поправил, теперь cryptsrv запускается. Результат выполнения постинсталл сценария: КриптоПРО для Gentoo · GitHub
Команда /opt/cprocsp/sbin/amd64/cpconfig -hardware reader -view
отображает:
Nick name: Aktiv Rutoken ECP 00 00
Connect name:
Reader name: Aktiv Rutoken ECP 00 00
Но в cptools считыватель не виден и через PKCS#11 интерфейс КриптоПРО не видны сертификаты.
Проверка наличия сертификатов и ключевых пар на Рутокен ЭЦП
Перед запуском процесса проверки наличия сертификатов и ключевых пар на Рутокен ЭЦП загрузите и установите библиотеку PKCS#11, а также определите путь до библиотеки librtpkcs11ecp.so.
Для того чтобы загрузить библиотеку PKCS#11:
С этим проблем нет, родной Рутокен PKCS#11 сертификаты видит, Рутокен Плагин в браузере работает и даже в Госуслуги заходит. А вот для налоговой уже КриптоПРО нужен.
На Devuan Testing настраивал, довольно спокойно заработало, теперь пытаюсь на Gentoo.
Т.е. библиотеку PKCS#11 установили и по этим путям
/opt/aktivco/rutokenecp/x86_64/librtpkcs11ecp.so
/usr/lib64/librtpkcs11ecp.so
она у Вас присутствует?
Да, но только по пути /usr/lib64/librtpkcs11ecp.so
, в /opt/aktivco/rutokenecp/x86_64/librtpkcs11ecp.so
не ставил. Сейчас сделал на неё ссылку, но не помогло.
Смотрю *.deb-пакет, сама библиотека лежит в:
/opt/aktivco/rutokenecp/amd64/
в
/usr/lib64/
ссылка на /opt
Смотрю *.rpm-пакет, сама библиотека лежит в:
/opt/aktivco/rutokenecp/x86_64/
в
/usr/lib64/
ссылка на /opt
Поэтому, если библиотека в
/usr/lib64/
то тогда всё норм.
Тогда остаётся проверить постинстал сценарий СКЗИ, может там что-то не хватило?
Что скажет?
$ grep -n librtpkcs11ecp.so /etc/opt/cprocsp/config64.ini
72:pkcs11_dll = "librtpkcs11ecp.so"
Ага, пусто, видимо этого и не хватает, но не понятно, где постскрипт должен заполнять это значение
Следует разобраться
Это, похоже, в блоке [KeyDevices\cryptoki]
, но единственное упоминание, это установка cprocsp-rdr-cryptoki, который установлен.
$ grep -B2 librtpkcs11ecp.so /etc/opt/cprocsp/config64.ini
[KeyDevices\cryptoki_rutoken\"PNP cryptoki"\Default]
pkcs11_dll = "librtpkcs11ecp.so"
Наполняет конфиг пост-инсталл сценарий этого пакета:
cprocsp-rdr-cryptoki-64-5.0.12000-6
Использую файл из linuxbuh/cprocsp_postinstal_all_scripts.sh at master · linuxbuh/linuxbuh · GitHub , там этого нет.
Угу, поэтому и пишу, что:
Нашёл и добавил, чего не хватает, теперь, судя по strace
cptools
успешно подгружает библиотеку рутокена, правда, пока всё равно ничего не отображается. В системных логах ошибка
<csp>OpenContainer!OpenContainer kcar_open fail (0x80090016)
.
P.S. А вот /opt/cprocsp/bin/amd64/csptest -keys -enum -verifyc -fqcn -machinekeyset
ключи видит.
Хех, сходил, прикупил " Рутокен ЭЦП 3.0 3100", на неделе буду тестировать…
Есть подозрение, что во время попытки настроек слетела лицензия, по крайней мере в “Срок действия лицензии” отображается “Данные повреждены”. Если я не забыл сохранить код на компе с Devuan, то, возможно, проблема решится.
Вам стоит посмотреть в сторону содержимого post install этих пакетов:
cprocsp-rdr-pcsc-64-5.0.12000-6.x86_64.rpm
cprocsp-rdr-rutoken-64-5.0.12000-6.x86_64.rpm
Сверить, есть ли сценарий в post install в ебилде.
После установки напрямую через пакетный менеджер, КриптоПро начинал видеть носители и содержимое.
Это тоже следствие не корректного выполнения какой то из части сценария postinstall. Путем экспериментов по установке выяснилось. Если установку производить полностью из rpm/deb пакетов, сценарии которые выполняются в процессе установки генерируют пробный период и ошибки с лицензией нет.