Подробная гайд-инструкция по устранению ошибки инициализации Рутокен в РЕД ОС 7.2 - Часть 2
8. Запустите pcscd в режиме отладки и проверьте токен
Теперь нужно проверить, что токен инициализируется корректно.
Остановите службу:
sudo systemctl stop pcscd.socket pcscd.service 2>/dev/null || true
sudo service pcscd stop 2>/dev/null || true
sudo killall pcscd 2>/dev/null || true
Запустите pcscd вручную в отладочном режиме:
sudo /usr/sbin/pcscd -f -d 2>&1 | tee /tmp/pcscd-rutoken.log
После этого вставьте Рутокен, если он еще не вставлен, или переподключите его.
В логе больше не должно быть:
Aktiv Rutoken lite init failed
Failed adding USB device
Желательно увидеть что-то вроде успешной инициализации драйвером Рутокен:
Attempting startup of Aktiv Rutoken lite 00 00 using .../librtpcsc...
...
RFAddReader() ... init succeeded
Точный текст может отличаться, главное — нет init failed.
9. Проверка через pcsc_scan
Откройте второй терминал и выполните:
pcsc_scan
Если всё хорошо, вы должны увидеть примерно:
PC/SC device scanner
...
Scanning present readers...
0: Aktiv Rutoken lite 00 00
...
Card state: Card inserted
Если pcsc_scan снова пишет:
Waiting for the first reader...
значит PC/SC по-прежнему не зарегистрировал считыватель. В этом случае возвращайтесь к пунктам 4–7: драйвер Рутокен не установлен, не найден pcscd, мешает ccid, неверный каталог драйверов.
10. Запуск службы pcscd в штатном режиме
После успешной ручной проверки остановите отладочный pcscd в первом терминале комбинацией:
Ctrl+C
Затем запустите службу нормально:
sudo systemctl start pcscd.socket pcscd.service 2>/dev/null || sudo service pcscd start
Или перезапустите:
sudo systemctl restart pcscd.socket pcscd.service 2>/dev/null || sudo service pcscd restart
Добавьте в автозагрузку:
sudo systemctl enable pcscd.socket pcscd.service 2>/dev/null || true
После этого снова переподключите токен и проверьте:
pcsc_scan
11. Если используется openct — удалите или отключите
Старая подсистема openct может конфликтовать с pcscd.
Проверьте:
rpm -qa | grep openct
systemctl status openct 2>/dev/null
Если есть, отключите:
sudo systemctl disable --now openct 2>/dev/null || true
При необходимости удалите:
sudo dnf remove openct
или:
sudo yum remove openct
12. Проверка КриптоПро CSP 5
Теперь, когда токен должен быть виден на уровне pcsc_scan, проверяем КриптоПро.
Выполните от обычного пользователя, под которым работает подпись:
/opt/cproc/bin/csptest -enum
И дополнительно:
/opt/cproc/bin/csptest -keyset -enum -fqcn
Если путь отличается, найдите утилиту:
find /opt/cproc -name csptest -type f 2>/dev/null
В выводе должен появиться считыватель или контейнеры, связанные с Рутокеном, например:
Aktiv Rutoken lite
или контейнеры вида:
\\.\Aktiv Rutoken lite ...
Если pcsc_scan токен видит, а csptest нет — проблема уже в компонентах КриптоПро, правах, SELinux или отсутствии поддержки Рутокен в установленной конфигурации КриптоПро.
13. Убедитесь, что установлен компонент КриптоПро для Рутокен
В КриптоПро CSP 5 поддержка разных считывателей может предоставляться отдельными пакетами.
Проверьте установленные пакеты:
rpm -qa | grep -Ei 'cprocsp|lsb-cprocsp' | grep -Ei 'rdr|rutoken'
Желательно наличие пакетов, в которых есть rdr и rutoken, например:
lsb-cprocsp-rdr-rutoken
cprocsp-rdr-rutoken
Названия могут немного отличаться в зависимости от сборки и способа установки.
Если такого пакета нет, переустановите или доустановите КриптоПро из оригинального дистрибутива КриптоПро 5 для Linux.
Если у вас архив КриптоПро, обычно лучше использовать:
sudo ./install.sh
Если устанавливаете вручную через RPM, ищите пакет примерно такого вида:
sudo rpm -Uvh lsb-cprocsp-rdr-rutoken*.rpm
или:
sudo rpm -Uvh cprocsp-rdr-rutoken*.rpm
Важно: пакет должен совпадать по версии и архитектуре с установленной КриптоПро.
14. Проверьте, что КриптоПро видит библиотеку PC/SC
КриптоПро обращается к смарт-картам через libpcsclite.
Проверьте:
ldconfig -p | grep libpcsclite
Должна быть строка вида:
libpcsclite.so.1
Если библиотека отсутствует:
sudo dnf install pcsc-lite-libs
или:
sudo yum install pcsc-lite-libs
Если у вас установлена 32-битная версия КриптоПро или 32-битные компоненты, может потребоваться также 32-битная библиотека:
sudo dnf install pcsc-lite-libs.i686
Но на обычной 64-битной РЕД ОС и 64-битной КриптоПро это обычно не нужно.
15. Проверьте конфигурацию считывателей КриптоПро
В некоторых конфигурациях КриптоПро можно посмотреть список аппаратных считывателей:
/opt/cproc/bin/cpconfig -hardware reader -list 2>/dev/null || true
Если команда есть и список пуст, а токен точно работает на уровне pcsc_scan, вероятно, не установлен компонент поддержки Рутокен или повреждена установка КриптоПро.
Также можно проверить наличие конфигурационных файлов:
ls -l /etc/opt/cproc/ 2>/dev/null
grep -R -i rutoken /etc/opt/cproc/ 2>/dev/null
Если каталога нет или там нет упоминания Рутокен, это не всегда ошибка, но при отсутствии пакета поддержки Рутокен КриптоПро может не знать, как работать с этим считывателем.
Информация предоставлена в ознакомительных целях. Применение описанных настроек в системах, должно осуществляться только после согласования с ответственными за информационную безопасность и в соответствии с требованиями ФСТЭК, ФСБ и иных уполномоченных органов.