Найти тему

Как настроить криптопро и ЭЦП на Linux чтоб всё работало со стороны поставщика

Пингвин жрёт рутокен
Пингвин жрёт рутокен

Привет, работаю в госзакупках 13 лет. Долго думал что настроить ЭЦП на линуксе это невероятно сложно, поэтому я использовал винду много лет, хоть порой и посматривал на милого пингвинчика. Но теперь у меня работают площадки на линуксе, поэтому решил сделать один целостный мануал - как именно этого можно добиться без регистрации и смс. Надеюсь он поможет кому-нибудь, было бы круто!

Тестировал на x64 Linux Mint и Astra Linux - это дистрибутивы на базе Debian. Соответственно все пакеты в этом мануале у меня выбраны для x64 систем.

https://cryptopro.ru/products/csp/downloads качаем криптопро (для того чтобы скачать - надо будет сначала зарегистрироваться на их сайте)

выбираем актуальную версию, а не сертифицированную, что бы это ни значило
выбираем актуальную версию, а не сертифицированную, что бы это ни значило

открываем терминал в папке со скачанным файлом и пишем команду для разархивации:

tar -xvf linux-amd64_deb.tgz && cd linux-amd64_deb

открываем терминал внутри распакованной папки и пишем:

sudo ./install_gui.sh

появится установщик, в нём отмечаем следующие пункты (пробелом):

добавляем только "поддержка токенов и смарт карт"
добавляем только "поддержка токенов и смарт карт"

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

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

sudo apt-get install pcscd libccid

выбирайте библиотеку под свой носитель (у меня только рутокены, поэтому ставил только под них):

  • библиотека для Рутокен - здесь
  • библиотека для JaCarta - здесь
  • библиотека для Esmart - здесь

Ещё надо отдельно поставить пакет для Рутокен S, он находится в той первой папке с криптопро, называется ifd-rutokens_1.0.4_amd64.deb. Если ругается что не может установиться, потому что libusb-0.1-4 не установлен - устанавливаем (у меня такого не было в Astra Linux, а в Linux Mint ругается):

sudo apt update
sudo apt install libusb-0.1-4

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

sudo systemctl status pcscd

если не активна, то запускаем:

sudo systemctl enable --now pcscd

качаем КриптоПро ЭЦП BrowserPlug-in 2.0 по ссылке, распаковываем и устанавливаем пакеты pki-cades и pki-plugin:

sudo dpkg -i cprocsp-pki-cades-64_2.0.14660-1_amd64.deb
sudo dpkg -i cprocsp-pki-plugin-64_2.0.14660-1_amd64.deb

Найдите на вашем компе установленную программу Инструменты КриптоПро, у меня она была в разделе "Стандартные", но проще найти её по поиску.

-4

Нажимаем Контейнеры - выбираем нужный контейнер и нажимаем "Установить сертификат".

Почти всё, осталось настроить долбаные госуслуги.

Заходим сюда, автоматически должен скачаться файл IFCPlugin-x86_64.deb, устанавливаем его. Это сам плагин.

Ставим расширение для браузера по той же ссылке. У меня Chrome, поэтому выбрал это расширение. После установки не забудьте активировать его.

Теперь главное, без чего эта фигня не будет работать:

скачиваем файл конфигурации x64 по ссылке и добавляем его в домашнюю директорию, или home, открываем там терминал и выполняем 3 команды:

sudo cp ~/ifcx64.cfg /etc/ifc.cfg
/opt/cprocsp/bin/amd64/csptestf -absorb -certs -autoprov
sudo cp /etc/opt/chrome/native-messaging-hosts/ru.rtlabs.ifcplugin.json /etc/chromium/native-messaging-hosts

Вот и всё, вы великолепны! Пробуйте: роселторг, РТС, 223-zakazrf, etpgpb, utp-sberbank - всё работает.

Основные источники:

https://support.cryptopro.ru/index.php?/Knowledgebase/Article/View/390

https://support.cryptopro.ru/index.php?/Knowledgebase/Article/View/275