Для запуска терминала нажмите комбинацию клавиш ALT+T.
Из нашей статьи вы узнаете:
Чтобы работать с электронной подписью, недостаточно её просто получить. Пользователю требуется настроить рабочее место. Для этого на ПК, с которого будет осуществляться взаимодействие, требуется установить специальную программу — криптопровайдер.
Компания КриптоПро является одним из самых популярных разработчиков программного обеспечения для работы с электронной подписью. Она занимается выпуском такого продукта, как КриптоПро CSP.
В статье расскажем, для чего необходим криптопровайдер и как установить КриптоПро на компьютер.
Из нашей статьи вы узнаете:
Для работы с электронной подписью понадобится средство криптографической защиты (СКЗИ) — криптопровайдер. Его скачивают и устанавливают на компьютер, с которого будет осуществляться обработка цифровых документов.
КриптоПро CSP — это популярное СКЗИ от российских разработчиков. Криптографическая утилита работает со всеми видами электронной подписи и на популярных операционных системах. Именно с этим криптопровайдером реализовано взаимодействие ФНС при выдаче квалифицированных сертификатов электронного ключа. Программа имеет сертификацию от ФСБ, соответствует последним обновлениям стандартов генерации и проверки ЭЦП.
Электронная подпись
Для установки сертификата:
- Вставьте съемный носитель в компьютер. Если сертификат не на съемном носителе, этот пункт можно пропустить.
- Запустите «КриптоПро CSP»: откройте меню «Пуск» → «Панель управления» → «КриптоПро CSP».
- Перейдите на вкладку «Сервис».
- Нажмите «Просмотреть сертификаты в контейнере».
- Нажмите «Обзор».
- Выберите из списка нужный контейнер и нажмите «Ок».
Если нужный контейнер отсутствует, действуйте согласно инструкции.
- Нажмите «Далее».
- Нажмите «Установить».
Если сертификат на данном рабочем месте уже был установлен, появится сообщение, что такой сертификат уже есть в хранилище. Нажмите «Да», чтобы заменить его, и «Ок» в ответ на сообщение об успешной установке, затем «Готово».
- Нажмите «Ок».
Эти действия необходимо выполнить для каждого сертификата. На этом установка сертификата закончена.
Информация об установке «КриптоПро CSP» есть в статье.
Помогла ли статья решить вопрос?
Благодарим за отзыв!
Спасибо, что сообщили нам!
Спасибо, что сообщили нам!
Инициализация контейнера и установка личного сертификата ЭП в СКЗИ обычно происходит автоматически. Но иногда случаются ошибки, и мастер установки не видит контейнер, соответствующий открытому ключу. Расскажем, что делать, если мастер установки ЭП не находит контейнер.
Установка личного сертификата КриптоПро CSP
-
-
В открывшемся окне перейдите на вкладку и нажмите на кнопку Установить личный сертификат.
-
В следующем окне нужно задать расположение файла сертификата. Для этого выберите путь к файлу с помощью кнопки
-
Контейнер закрытого ключа. Чтобы задать контейнер вручную, нажмите на кнопку и выберите его из списка. Мастер установки также может находить контейнер автоматически. Для этого установите соответствующую галочку и в блоке Введённое имя задаёт ключевой контейнер выберите нужный вариант: Пользователя или Компьютера.
-
Выберите хранилище, в которое будет установлен сертификат. Проставьте флажок Установить сертификат в контейнер.
-
В окне Завершение работы мастера установки личного сертификата проверьте, правильно ли указаны параметры. Чтобы установить сертификат ЭП, нажмите кнопку Готово.
Установка личного сертификата VipNet CSP
-
На вкладке Контейнеры ключей нажмите кнопку Установить сертификат.
-
Выберите путь к файлу с помощью кнопки
-
Выберите хранилище, в которое нужно установить сертификат ЭП: текущего пользователя или компьютера.
-
В следующем окне из выпадающего списка выберите пункт Найти контейнер с закрытым ключом, чтобы поиск произошёл автоматически. Если мастер установки не находит контейнер, можно сделать это вручную. Для этого выберите из выпадающего списка пункт Указать контейнер с закрытым ключом.
-
После выбора контейнера нажмите ОК и Готово, чтобы закрыть окно.
После завершения установки контейнер и сертификат ЭП будут готовы к использованию.
Что делать, если мастер установки не находит контейнер
Если нужного контейнера нет в списке контейнеров СКЗИ, его можно добавить вручную. Для этого в окне Контейнеры ключей нажмите кнопку Добавить контейнер. В открывшемся окне выберите папку, где находится контейнер требуемого ключа, а в ней — нужный файл.
После выбора контейнера откроется окно с подтверждением. В нём нужно подтвердить, что сертификат пользователя устанавливается в системное хранилище сертификатов. Помните, что при перемещении контейнера ключа ЭП в другой каталог, его придётся установить повторно.
Для установки личного сертификата электронной подписи компании используйте один из способов:
1. Установка сертификата автоматически с выбором хранилища
1. Для того, чтобы установить личный сертификат, откройте «КриптоПро CSP» (Рис. 1).
2. В открывшейся программе перейдите во вкладку «Сервис», затем нажмите «Просмотреть сертификаты в контейнере» (Рис. 2).
3. В открывшемся окне нажмите кнопку «Обзор» (Рис. 3).
4. Выберите ключевой контейнер из списка и нажмите кнопку «Ок» (Рис. 4).
5. В окне «Сертификаты в контейнере закрытого ключа» нажмите кнопку «Далее» (Рис. 5).
6. Затем нажмите кнопку «Установить» (Рис. 6).
7. Сертификат установится в хранилище «Личные» текущего пользователя.
2. Установка сертификата вручную с выбором хранилища
Для установки личного сертификата (сертификата вашей организации) вручную выполните следующие действия.
На рабочем столе нажмите кнопку «Пуск», выберите «Панель управления», затем «КриптоПро CSP». В появившемся окне «КриптоПро CSP» перейдите на вкладку «Сервис» и нажмите кнопку «Посмотреть сертификаты в контейнере» (Рис. 7).
В открывшемся окне нажмите кнопку «Обзор» (Рис. 8).
Выберите нужный контейнер и нажмите кнопку «Ок» (Рис. 9).
В следующем окне кликните по кнопке «Далее» (Рис. 10).
Нажмите кнопку «Свойства» (Рис. 11).
Если информация не подгрузилась, значит выбрали не тот контейнер (Рис. 9). Вернитесь «назад» и выберите другой контейнер, пока не подгрузятся данные в окне согласно рисунку 11.
В открывшемся окне нажмите кнопку «Установить сертификат» (Рис. 12).
Выберите расположение хранилища «Текущий пользователь» и нажмите «Далее» (Рис. 13).
Укажите расположение сертификата вручную, выбрав «Поместить все сертификаты в следующее хранилище» и нажмите кнопку «Обзор» для выбора хранилища сертификатов (Рис. 14).
Выберите «Личное» и нажмите «Ок» (Рис. 15).
Нажмите кнопку «Далее» (Рис. 16).
Нажмите кнопку «Готово» (Рис. 17).
Нажмите кнопку «Ок» (Рис. 18).
3. Установка сертификата через «Личный сертификат»
Для установки личного сертификата (сертификата вашей организации) через «Личный сертификат» выполните следующие действия.
На рабочем столе нажмите кнопку «Пуск», выберите «Панель управления», затем «КриптоПро CSP». В появившемся окне «КриптоПро CSP» перейдите на вкладку «Сервис» и нажмите кнопку «Установить личный сертификат» (Рис. 19).
В открывшемся окне нажмите кнопку «Обзор» (Рис. 20).
Выберите нужный сертификат и нажмите кнопку «Открыть» (Рис. 21).
В следующем окне нажмите кнопку «Далее» (Рис. 22).
Нажмите кнопку «Далее» (Рис. 23).
В открывшемся окне отметьте поле «Найти контейнер автоматически» (1) и нажмите кнопку «Далее» (2) (Рис. 24).
В окне «Хранилище сертификатов» нажмите кнопку «Далее» (Рис. 25).
Нажмите «Готово» (Рис. 26).
Отобразятся сообщения о чтении ключевой информации и произведении записи информации, нажмите «Ок» (Рис. 27, 28).
Если ранее сертифкат уже был в хранилище, то система предложит заменить его. Нажмите кнопку «Да» (Рис. 29).
Сертификат будет установлен.
Почему компьютер не видит сертификат ЭЦП
При попытках заверения личных документов могут возникать ситуации, при которых система не видит сертификат электронной подписи. Это вызывает неудобства, т. к. для получения той или иной услуги требуется посещение учреждений. Устранить ошибку помогает правильная настройка системы, внесение некоторых изменений в реестр Windows.
Почему компьютер не видит сертификат электронной подписи – основные причины
Возникновению такой ошибки способствуют следующие факторы:
- Отсутствие специальной надстройки в браузере. Необходимо проверить наличие «КриптоПро» через меню веб-обозревателя.
- Отсутствие сертификата ЭЦП в списке. Наличие такого файла свидетельствует, что выдавшее подпись учреждение аккредитовано в Минкомсвязи и имеет право совершения указанного действия. При отсутствии корневого сертификата проверка подлинности электронной подписи и ее использование становятся невозможными.
- Ошибки при проверке ЭП в «АТИ-Доках». В таком случае на экране появляется соответствующее уведомление.
Пошаговая инструкция решения проблемы
Если флеш-накопитель с ЭЦП не работает, выполняют такие действия:
- Устанавливают программные компоненты, необходимые для корректного использования площадки. К ним относятся плагины для сайтов «Госуслуги», «Госзакупки» и т. д.
- Убеждаются в правильности установленных на компьютере даты, времени и часового пояса.
- Проверяют наличие сертификата в личном хранилище. При его отсутствии или повреждении выполняют переустановку. Убеждаются в том, что срок действия найденного сертификата не истек.
- Активируют функцию представления совместимости. Эта рекомендация относится к пользователям Internet Explorer. Чтобы найти функцию, переходят в меню, открывают раздел «Параметры просмотра», пункт «Добавить адрес портала».
- Проверяют работу системы в других браузерах. Если система по-прежнему не подписывает документ, можно попробовать использовать другое устройство.
- Проверяют операционную систему на наличие вирусов. Для этого используют специальные утилиты, например «Антивирус Касперского».
Почему «КриптоПро CSP» может не видеть ключей
В таком случае проверяют следующие параметры:
- правильность установки программы (должна быть активной служба Installer);
- наличие подключения к интернету;
- корректность указанного в сертификационном центре файла.
При установке плагина выполняют следующие действия:
- Загружают личный сертификат с учетом даваемых мастером инструкций. С помощью кнопки «Обзор» прописывают путь сохранения файла с расширением .cer.
- Используют контейнер закодированного ключа. С помощью кнопки «Обзор» нужно выбрать на флеш-накопителе требуемый сертификат.
Если ранее файлы были установлены неправильно и перенос на новый носитель не выполняется, очищают реестр операционной системы.
Для этого в меню CSP предусмотрена клавиша «Удалить пароли». Если приложения и надстройки работают без ошибок, а Event Log выдает ложную информацию, нужно сканировать файлы с помощью функции Sfc/scannow.
После этого выполняют повторную регистрацию компонентов посредством MSIExec/regserver.
Что делать при отсутствии своего сертификата в списке на странице «Ваши сертификаты»
Если подобный объект не был установлен, переходят на интернет-страницу удостоверяющего центра, скачивают и устанавливают компоненты личной электронной подписи. Если сертификат скачан ранее, проверяют правильность его загрузки. Для этого выполняют следующие действия:
- Переходят в пусковое меню. Выбирают раздел «Все программы». После этого нужно найти в списке «КриптоПро».
- В открывшемся окне выбирают вариант «Личное», переходят во вкладку «Сертификаты».
- Двойным нажатием открывают объект, который не отображается в списке. Переходят в раздел «Путь сертификации». Здесь находится цепочка, включающая личные файлы, корневые сертификаты удостоверяющего центра, ключи вышестоящих инстанций, выполнявших аккредитацию.
- Проверяют, присутствуют ли возле найденных объектов предупредительные знаки, например, крестики. При наличии таковых сертификат считается недействительным. Нажав на файл, можно посмотреть причину ошибки.
- Если объекты просрочены, необходимо обратиться в удостоверяющий центр для продления. Если предупредительные знаки отсутствуют, а доступные файлы не проходят проверку, переустанавливают корневой сертификат личной электронной подписи.
https://youtube.com/watch?v=joJiRHhFvh0%3Ffeature%3Doembed%26wmode%3Dopaque
Что делать при возникновении ошибки «Ваша электронная подпись не прошла проверку на сервере»
Необходимо получить открытый ключ цифровой подписи и направить в службу технической поддержки АТИ. Для извлечения объекта устанавливают «КриптоПро», выполняют следующие действия:
- Нажимают Win+R, указывают пароль администратора. В новом окне вводят certmgr.msc. Используют клавишу OK.
- На открывшейся странице в списке находят нужный сертификат. Нажимают на его наименование правой клавишей мыши. Во вкладке «Задачи» выбирают вариант «Экспорт».
- Если нужный объект в списке отсутствует, открывают пункт «Получение файла с помощью «КриптоПро CSP».
- В открывшемся «Мастере экспорта» используют клавишу «Продолжить». Выбирают вариант «Не выводить закрытый ключ», подтверждают действие.
- В новом окне выбирают «Файлы в DER-кодировке». Нажимают кнопку «Обзор», прописывают путь сохранения файла. Нажимают кнопки «Продолжить», «Готово».
При правильном выполнении действий появляется сообщение о завершении переноса.
С Нового Года от Индивидуальных Предпринимателей (ИП) и директоров Обществ с
Ограниченной Ответственностью (ООО) требуют использовать Квалифицированную
Электронную Подпись (КЭП) выданную Федеральной Налоговой Службой (ФНС).
Это требует от пользователей ряда действий:
-
Купить токен (похожее на флешку устройство для хранения КЭП)
-
Настроить КриптоПро на своём рабочем месте
-
Добавить свой сертификат в хранилище сертификатов на рабочем месте
-
Настроить работу со всеми теми сервисами где КЭП будет использоваться
Ниже будет пример, как можно настроить контейнер Linux для работы с КЭП от ФНС,
а так же сервисов nalog.ru, gosuslugi.ru, moedelo.com и diadoc.kontur.ru (на этих тестировалось, но будет работать и на других, хотя и потребует дополнительных действий).
Мотивация для настройки именно в таком виде:
-
Подойдёт для любого Linux дистрибутива
-
Однажды сделав легко запускать на любой из версий с Linux и на любом из компьютеров с Linux
-
Желающие настроить локально без контейнера легко смогут повторить по шагам описанным в Dockerfile
В предлагаемом вариант настройка следующая:
-
На хост систему устанавливается pcsc (соответствующие пакеты входят во многие дистрибутивы) соответствующее вашему токену (на сайте токена подробно описываются настройки, например для Рутокена есть такое описание)
-
В контейнер прокидывается socket от фоновой программы pcscd
-
Внутри контейнера установлено всё необходимое, достаточно только добавить личный сертификат
-
Используется браузер firefox прямо из контейнера
Могут быть разные варианты этой схемы.
Описанный подход позволяет пользоваться КЭП от ФНС под любым дистрибутивом Linux.
Тестировалось с Рутокен ЭЦП 3.0 (должно работать и с любыми другими, которые поддерживаются pcsc и КриптоПро).
Репозиторий с Dockerfile — https://github.com/YuraBeznos/cryptopro-in-container
Сам образ не предлагается т.к. лицензии на входящее программное обеспечение не позволяют это, хотя конечно, никто не может запретить создать свой образ и хранить его у себя.
-
Установить всё необходимое для работы токена на хост системе, обычно это pcsc и библиотеки к нему (смотреть на сайте производителя)
-
Проверить на хост системе, что токен определяется:
# pcsc_scan
Using reader plug'n play mechanism
Scanning present readers...
0: Aktiv Rutoken ECP 00 00
Mon Dec 19 22:36:07 2022
Reader 0: Aktiv Rutoken ECP 00 00
Event number: 0
Card state: Card inserted,
-
-
Это может занять время и эту процедуру можно проходить в самом контейнере
-
Например плагины можно поставить в самом Firefox, а папку с расширением потом скопировать из пользовательской
-
-
Собрать образ docker
docker build ./ -t cryptopro-in-container:first
-
Разрешить открыть окна в wm приложениям со стороны
xhost +local:
-
Запустить контейнер из полученного образа
docker run --rm -ti -v `pwd`/:/something -v /run/pcscd/pcscd.comm:/run/pcscd/pcscd.comm -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=unix"$DISPLAY" cryptopro-in-container:first /bin/bash -i
# Где /run/pcsсd/pcscd.comm сокет для обращений
# /tmp/.X11-unix доступ к активной сессии
# DISPLAY переменная определяющая где открывать окна
# something папка внутри контейнера с содержимым той папки из которой запускаете
-
Найти имя своего криптоконтейнера
csptest -keyset -enum_cont -fqcn -verifyc
root@d66b9560c771:/# csptest -keyset -enum_cont -fqcn -verifyc
CSP (Type:80) v5.0.10010 KC1 Release Ver:5.0.12455 OS:Linux CPU:AMD64 FastCode:READY:AVX.
AcquireContext: OK. HCRYPTPROV: 17693171
\\.\Aktiv Rutoken ECP 00 00\0c686f35c-328c-0cf8-e404-900dcf68a53
OK.
Total: SYS: 0.010 sec USR: 0.040 sec UTC: 0.820 sec
[ErrorCode: 0x00000000]
-
Копировать публичный сертификат с токена в файл (подставив имя своего криптоконтейнера)
certmgr -export -dest mine.crt -container '\\.\Aktiv Rutoken ECP 00 00\0c686f35c-328c-0cf8-e404-900dcf68a53'
-
Установить свой сертификат внутри контейнера (подставив имя своего криптоконтейнера)
certmgr -install -store uMy -file mine.crt -cont '\\.\Aktiv Rutoken ECP 00 00\0c686f35c-328c-0cf8-e404-900dcf68a53'
-
Запустить браузер
firefox
и пользоваться необходимыми сайтами.
Поздравляю, теперь вы можете используя токен аутентифицироваться на таких сайтах как nalog.ru и gosuslugi.ru, подписывать документы в diadoc.kontur.ru и сдавать отчётность в moedelo.ru .
Прикрепляю сам Dockerfile (в репозитории может быть более свежая версия https://github.com/YuraBeznos/cryptopro-in-container ):
Dockerfile
# 2022 December
FROM debian:stable@sha256:880aa5f5ab441ee739268e9553ee01e151ccdc52aa1cd545303cfd3d436c74db
ENV DEBIAN_FRONTEND noninteractive
ENV PATH="${PATH}:/opt/cprocsp/bin/amd64/"
# Downloaded from https://www.cryptopro.ru/fns_experiment
ADD csp-fns-amd64_deb.tgz /cryptopro
# Downloaded from https://www.rutoken.ru/support/download/pkcs/#linux
COPY librtpkcs11ecp_2.6.1.0-1_amd64.deb /cryptopro
# Downloaded from https://restapi.moedelo.org/eds/crypto/plugin/api/v1/installer/download?os=linux&version=latest
COPY moedelo-plugin_*_amd64.deb /cryptopro
# Downloaded from install.kontur.ru
COPY kontur.plugin_amd64.deb /cryptopro
# Downloaded from https://ds-plugin.gosuslugi.ru/plugin/upload/Index.spr
COPY IFCPlugin-x86_64.deb /cryptopro
# Downloaded from https://www.rutoken.ru/support/download/get/rtPlugin-deb-x64.html
COPY libnpRutokenPlugin_*_amd64.deb /cryptopro
RUN apt-get update && \
apt-get install -y whiptail libccid libpcsclite1 pcscd pcsc-tools opensc \
libgtk2.0-0 libcanberra-gtk-module libcanberra-gtk3-0 libsm6 \
firefox-esr && \
cd /cryptopro/fns-amd64_deb && \
dpkg -i /cryptopro/librtpkcs11ecp_*_amd64.deb && \
sed -i s#install_gui#install# _FNS_INSTALLER.sh && \
./_FNS_INSTALLER.sh && \
dpkg -i /cryptopro/fns-amd64_deb/cprocsp-pki-cades-64_*_amd64.deb && \
dpkg -i /cryptopro/fns-amd64_deb/cprocsp-rdr-gui-gtk-64_*_amd64.deb && \
dpkg -i /cryptopro/fns-amd64_deb/cprocsp-pki-plugin-64_*_amd64.deb && \
dpkg -i /cryptopro/fns-amd64_deb/cprocsp-cptools-gtk-64_*_amd64.deb && \
dpkg -i /cryptopro/fns-amd64_deb/cprocsp-rdr-pcsc-64_*_amd64.deb && \
dpkg -i /cryptopro/fns-amd64_deb/cprocsp-rdr-rutoken-64_*_amd64.deb && \
dpkg -i /cryptopro/fns-amd64_deb/cprocsp-rdr-cryptoki-64_*_amd64.deb && \
dpkg -i /cryptopro/moedelo-plugin_*_amd64.deb && \
dpkg -i /cryptopro/kontur.plugin_amd64.deb && \
dpkg -i /cryptopro/IFCPlugin-x86_64.deb && \
dpkg -i /cryptopro/libnpRutokenPlugin_*_amd64.deb
# Downloaded from https://www.cryptopro.ru/sites/default/files/products/cades/extensions/firefox_cryptopro_extension_latest.xpi
COPY firefox_cryptopro_extension_latest.xpi /usr/lib/firefox-esr/distribution/extensions/ru.cryptopro.nmcades@cryptopro.ru.xpi
# Downloaded from install.kontur.ru (firefox addon)
COPY kontur.toolbox@gmail.com.xpi /usr/lib/firefox-esr/distribution/extensions/kontur.toolbox@gmail.com.xpi
# Downloaded from https://ds-plugin.gosuslugi.ru/plugin/upload/Index.spr
COPY addon-1.2.8-fx.xpi /usr/lib/firefox-esr/distribution/extensions/pbafkdcnd@ngodfeigfdgiodgnmbgcfha.ru.xpi
# Downloaded from https://addons.mozilla.org/ru/firefox/addon/adapter-rutoken-plugin/
COPY rutokenplugin@rutoken.ru.xpi /usr/lib/firefox-esr/distribution/extensions/rutokenplugin@rutoken.ru.xpi
CMD ["bash"]
Стоит добавить, что лицензия на КриптоПро идёт в составе сертификата (записывается на токен) выданного в ФНС. Если спустя время лицензию перестанут предоставлять, то криптопро позволяет работать в демо режиме ну и наконец можно приобрести. Ввод лицензии потребует дополнительные шаги.
Надеюсь это поможет пользователям 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:
tar -zxf ./linux-amd64_deb.tgz
Далее у нас есть 2 варианта – автоматическая установка и установка вручную. Автоматическая установка запускается командой:
sudo ./install.sh
sudo ./install_gui.sh
Здесь надо отдать должное разработчикам «КриптоПро» – автоматическая установка для большинства дистрибутивов отрабатывает успешно. Хотя бывают и нюансы. Например, если у вас не хватает некоторых пакетов, то установка будет успешно завершена, хотя некоторый функционал работать не будет.
Если что-то пошло не так, или вы по тем или иным причинам хотите использовать установку в ручном режиме, то вам необходимо выполнить:
dpkg -i ./cprocsp-curl-64_4.0.0-4_amd64.deb lsb-cprocsp-base_4.0.0-4_all.deb lsb-cprocsp-capilite-64_4.0.0-4_amd64.deb lsb-cprocsp-kc1-64_4.0.0-4_amd64.deb lsb-cprocsp-rdr-64_4.0.0-4_amd64.deb
Для установки пакетов в ROSA используйте urpmi, вместо dpkg -i.
Устанавливаем лицензию для «КриптоПро CSP» для Linux и проверяем, что все работает нормально:
cpconfig -license -set <серийный_номер>
cpconfig -license –view
Мы должны получить что-то вроде:
License validity:
XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
Expires: 3 month(s) 2 day(s)
License type: Server.
Настройка работы с Рутокен ЭЦП 2.0
Сделаем небольшое отступление. Для работы с электронной подписью и шифрованием нам не обойтись без ключевых пар и сертификатов. Надежное хранение закрытых ключей – один из основных факторов безопасности. А более надежных средств хранения, чем токен или смарт-карта, человечество пока не придумало. Я буду использовать Рутокен ЭЦП 2.0, который имеет сертификат ФСБ и поддерживает работу как с новыми, так и со старыми ГОСТами.
Для работы с токенами в ОС Linux есть масса различных средств и драйверов. Для описания всех этих средств понадобится отдельная статья. Поэтому я не буду подробно описывать, как это работает, и почему нам нужны именно эти пакеты.
Устанавливаем пакеты для работы с Рутокен ЭЦП 2.0:
apt-get install libpcsclite1 pcscd libccid
Нам также необходимо установить пакеты КриптоПро CSP для поддержки работы с токенами:
dpkg -i ./cprocsp-rdr-gui-gtk-64_4.0.0-4_amd64.deb ./cprocsp-rdr-rutoken-64_4.0.0-4_amd64.deb ./cprocsp-rdr-pcsc-64_4.0.0-4_amd64.deb ./lsb-cprocsp-pkcs11-64_4.0.0-4_amd64.deb
Получаем тестовый сертификат
Перед тем как перейти непосредственно к работе с подписью, надо сгенерировать ключевую пару и создать сертификат электронной подписи. Если у вас уже есть Рутокен с контейнером «КриптоПро», то эту часть можно смело пропустить.
Воспользуемся тестовым УЦ компании «КриптоПро» по адресу — https://www.cryptopro.ru/certsrv/
Создаем запрос на сертификат с параметрами по умолчанию.
Проверим, что сертификат получен успешно.
Чтобы убедиться, что «КриптоПро CSP» успешно увидел токен, выполним:
list_pcsc
Мы должны получить что-то вроде:
Aktiv Rutoken ECP 00 00
Теперь проверяем, что сертификат на токене видится успешно:
csptest -keyset -enum_cont -verifyc -fq
CSP (Type:80) v4.0.9014 KC1 Release Ver:4.0.9842 OS:Linux CPU:AMD64 FastCode:READY:AVX.
AcquireContext: OK. HCRYPTPROV: 13476867
\\.\Aktiv Rutoken ECP 00 00\822506788-dfcd-54c9-3a5e-e0a82a2d7f0
OK.
Total: SYS: 0,020 sec USR: 0,160 sec UTC: 0,870 sec
[ErrorCode: 0x00000000]
Записываем в хранилище сертификатов КриптоПро информацию об этом сертификате:
csptestf -absorb -cert -pattern 'rutoken'
Match: SCARD\rutoken_ecp_351d6671\0A00\62AC
OK.
Total: SYS: 0,010 sec USR: 0,140 sec UTC: 1,040 sec
[ErrorCode: 0x00000000]
Проверим, что сертификат успешно сохранился в хранилище:
certmgr -list -cert -store uMy
Certmgr 1.0 (c) "CryptoPro", 2007-2010.
program for managing certificates, CRLs and stores
=============================================================================
1-------
Issuer : E=support@cryptopro.ru, C=RU, L=Moscow, O=CRYPTO-PRO LLC, CN=CRYPTO-PRO Test Center 2
Subject : CN=Trusted eSign Test
Serial : 0x120019F5D4E16D75F520A0299B00000019F5D4
SHA1 Hash : 0x016f443df01187d5500aff311ece5ea199ff863e
SubjKeyID : 204e94f63c68595e4c521357cf1d9279bff6f6e5
Signature Algorithm : ГОСТ Р 34.11/34.10-2001
PublicKey Algorithm : ГОСТ Р 34.10-2001 (512 bits)
Not valid before : 22/02/2017 10:53:16 UTC
Not valid after : 22/05/2017 11:03:16 UTC
PrivateKey Link : Yes
Container : SCARD\rutoken_ecp_351d6671\0A00\62AC
Provider Name : Crypto-Pro GOST R 34.10-2012 KC1 CSP
Provider Info : ProvType: 80, KeySpec: 1, Flags: 0x0
CA cert URL : http://testca.cryptopro.ru/CertEnroll/test-ca-2014_CRYPTO-PRO%20Test%20Center%202.crt
OCSP URL : http://testca.cryptopro.ru/ocsp/ocsp.srf
CDP : http://testca.cryptopro.ru/CertEnroll/CRYPTO-PRO%20Test%20Center%202.crl
Extended Key Usage : 1.3.6.1.5.5.7.3.2
=============================================================================
[ErrorCode: 0x00000000]
На этом основная настройка завершена, и мы можем начинать подписывать или шифровать файлы с использованием различных средств. Переходим к тому, зачем задумывалась эта статья.
Подпись средствами «КриптоПро CSP»
В составе «КриптоПро CSP» есть утилита csptestf, позволяющая выполнять различные криптографические операции. Как я уже писал выше, у этой утилиты есть 2 недостатка:
- Отсутствие хорошей документации;
- Отсутствие графического интерфейса.
Подписать можно с помощью команды:
csptestf –sfsign –sign –in <имя файла> -out <имя файла> -my ‘Trusted eSign Test’ –detached –alg GOST94_256
Здесь,
my — параметр, в котором надо указать часть Common Name сертификата для подписи;
detached — позволяет создать открепленную подпись;
alg GOST94_256 — задает алгоритм хэширования, который будет использоваться при создании подписи.
csptestf –sfsign
Такой интерфейс отлично подходит для подготовленного пользователя или для автоматизации операций в скриптах.
Поговорим теперь об утилитах, которые облегчают жизнь обычным пользователям при работе с подписью и шифрованием в 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-сервисом по работе с подписью этой же компании.
К сожалению, продукт пока доступен только в виде deb пакета для 64-битных систем. С чем связано такое ограничение, непонятно. Будем надеяться, что в ближайшее время компания выпустит и rpm пакет, а также версии для 32-битных дистрибутивов Linux.
Скачиваем с официального сайта deb-пакет и устанавливаем командой:
dpkg –i ./trustedesign-x64.deb
Запускаем Trusted eSign.
Сразу видно, что разработка не обошлась без дизайнера. Никакого сарказма. Все действия делаются просто и логично, а внешний вид радует глаз. К сожалению, большинство средств и программ в области ИБ от российских разработчиков разработаны без привлечения UX-специалистов и дизайнеров и заставляют своих пользователей страдать и плакать кровавыми слезами. Создается впечатление, что другими средства информационной безопасности просто не могут быть. “Цифровые технологии” опровергают это. Плата за красоту и удобство – необходимость платить за лицензию.
Но вернемся к подписи.
Выбираем раздел “Электронная подпись”:
Выбираем «Сертификат для подписи»:
Выбираем файлы для подписи и жмем «Подписать»:
Что под капотом? Процитирую с сайта: “Приложение создано на современном движке Electron, для вызова криптографических операций применяется библиотека OpenSSL. Совместимо с СКЗИ “КриптоПро CSP 4.0” и поддерживает все криптографические алгоритмы, реализованные в нем.” Для тех, кто ещё не в курсе Electron — это фреймворк для создания десктопных приложений на платформе node.js.
Сравним Trusted eSign с Rosa crypto tool:
+ Более удобный и красивый интерфейс
— Платная лицензия
Резюме
Подведем итог. В конце 2016 – начале 2017 года наметился неплохой прогресс в средствах по работе с электронной подписью под Linux. Информационная безопасность начинает поворачиваться к пользователю лицом, и с каждым годом требуется все меньше действий для такого простого действия, как подписать или зашифровать файл с использованием отечественных алгоритмов.
Хочется дополнительно отметить такое развитие отечественных продуктов, учитывая современный тренд на замену Windows на Linux в государственных и муниципальных организациях. В рамках этого тренда становится актуальным использование средств криптографической защиты информации под Linux. Хорошие и удобные продукты российских разработчиков помогут государственным организациям и структурам нормально работать и выполнять требования по импортозамещению.
Такое развитие не может не радовать, особенно когда это происходит под Linux.
P.S.
Наверняка есть немало пользователей, особенно пользователей Linux, кто считает, что консольных утилит достаточно. А также специалистов по информационной безопасности, которые считают, что дизайн и удобство — излишество в ИБ. Но я не могу с ними согласиться. Консольные утилиты, несомненно, идеальны для автоматизации. Но большинству пользователей удобнее работать с графическими интерфейсами. Даже в Linux.
Установка CryptoPro на Windows
- Запустить скачанный дистрибутив CSP Setup.exe.
- Нажать «Установить».
- После установки ввести серийный номер лицензии. Для этого перейти в меню «Пуск» → «Все программы» → «КриптоПро» → «КриптоПро CSP» и нажать «Ввод лицензии».
- В открывшемся окне заполнить пустые строки и нажать «ОK».
- Перезагрузить компьютер.
Чтобы не подключать ключевой носитель каждый раз при подписании документа, пользователь включает режим кеширования. Система будет брать информацию из кеша до перезагрузки или выключения ПК.
Режим кеширования включается следующим образом:
- Открывается КриптоПро CSP.
- Нажимается вкладка «Безопасность».
- Устанавливается переключатель «Использовать службу хранения ключей».
- Ставится отметка напротив «Включить кеширование».
- Нажимается «ОК».
Настройка БДСЧ
После установки КриптоПро необходимо добавить Биологический ДСЧ. Для этого в терминале введите команду:
sudo /opt/cprocsp/sbin/amd64/cpconfig -hardware rndm -add bio_gui -level 4 –name
sudo /opt/cprocsp/sbin/amd64/cpconfig -hardware rndm -add bio_gui -level 4 -name GUI BioRNG
Для настройки работы 1С-Отчетности воспользуйтесь инструкцией Работа 1С-Отчетности на Linux.
КриптоПро Linux установка в Astra
Astra Linux — это отечественная операционная система на базе ядра Linux, для бюджетных организаций: армии, полиции, школы, больницы и других учреждений. Разработана в качестве альтернативы популярным зарубежным ОС во время реализации национальной стратегии импортозамещения. ОС также подходит и для домашнего пользования.
Инсталляция в Linux осуществляется через консоль. Пользователь вводит специальные текстовые команды. Данный процесс происходит вручную или автоматически. Рассмотрим, как установить CryptoPro Linux с помощью второго способа. Понадобится выполнить следующие действия:
- Выбрать и скачать установочный файл в «Центре загрузок» с учётом разрядности операционной системы;
- Распаковать сохранённый архив с расширением tgz;
- Перейти в папку с распакованным архивом и через контекстное меню выбрать команду «Открыть в терминале»;
- Запустить автоматическую инсталляцию CryptoPro командой sudo./install_gui.sh — откроется Мастер установки;
- С помощью клавиш Tab и Next — отметить доступные установочные компоненты и нажать «Install»;
- По окончании процедуры появится уведомление об успешной установке дистрибутива;
- Для активации лицензии набрать команду: sudo/opt/cprocsp/sbin/amd64/cpconfig-license-set XXXXX-XXXXX-XXXXX-XXXXX-XXXXX, где Х — это серийный номер.
Установка криптопровайдера КриптоПро для других версий операционных систем Линукс происходит аналогично.
Установка библиотек для ОС
Необходимо установить стандартные библиотеки для ОС. В терминале в командную строку введите команду:
sudo apt install lsb lsb-core alien
Для установки обновления нажмите на клавиатуре клавишу Y или Д, в зависимости от раскладки.
Установка КриптоПро
Для запуска установщика КриптоПро запустите файл install_gui.sh. Выберите КриптоПро КС1.
Для отображения содержимого каталога используйте команду LS
:
Разархивируйте дистрибутив (файл с расширением TGZ), используя команду:
tar xvf linux-amd64_deb.tgz
Перейдите в разархивированный каталог с помощью команды:
Описание необходимых пакетов КриптоПро
Установите КриптоПро с помощью команды:
В открывшемся окне нажмите Next:
Выберите компоненты, которые нужно установить. Нужные компоненты отметьте * (звездочкой) с помощью клавиши «Пробел» и нажмите Next:
В открывшемся окне нажмите Install:
После окончания установки нажмите Ок:
Введите лицензионный ключ КриптоПро:
При вводе пароля в системах Ubuntu/Linux процесс ввода никак не отображается, т.е звездочек, символов, смещений курсора и т.д. не будет.
Для выхода из установщика выберите Exit:
КриптоПро успешно установлен.
Зачем нужна программа КриптоПро CSP
Программа КриптоПро CSP формирует и проверяет электронную подпись. Шифрует и защищает от изменений записанные данные. Для передачи сведений использует надёжные протоколы связи TLS и IPsec. Поддерживает большинство операционных систем и операционных платформ.
Управление сертификатами
Список команд для управления сертификатами электронной подписи:
- Просмотр сертификатов на подключённых токенах — /opt/cprocsp/bin/amd64/csptest -keyset-enum_cont -fqcn -verifyc;
- Импорт персональных сертификатов электронной подписи со всех ключевых USB-носителей — /opt/cprocsp/bin/amd64/csptestf -absorb-cert;
- Просмотр добавленных сертификатов в хранилище — /opt/cprocsp/bin/amd64/certmgr -list -store uMy;
- Удаление сертификата из реестра — /opt/cprocsp/bin/amd64/certmgr -delete -store umy.
КриптоПро для Linux
Семейство операционных систем Linux имеют как консольный, так и графический интерфейс. В обоих случаях для настройки КриптоПро CSP используется командная строка. У Линукс нет единой ОС, которая имеет различные версии. Вместо этого, существует множество дистрибутивов, разработанных для конкретных задач, работающих на базе одноимённого ядра.
Рассмотрим, как установить CryptoPro Linux на операционную систему Astra Linux.
Установка КриптоПро
Рассмотрим, как установить программу КриптоПро на компьютер с операционными системами Windows и Linux.
Важно! Все действия выполняются под учётной записью администратора. Во время установки КриптоПро CSP следует закрыть работающие программы и приложения.
Как пользоваться КриптоПро для Линукс
Работа на КриптоПро для Линукс реализована с помощью использования консоли. Данный способ взаимодействия с электронными документами привычен специалистам. Рядовому пользователю удобно работать через графический интерфейс. Чтобы все клиенты могли использовать возможности CryptoPro Linux, было разработано КриптоАРМ ГОСТ.
КриптоАРМ ГОСТ — это приложение, которое позволяет работать с электронной подписью и документами через понятный интерфейс. Устанавливается на компьютер или мобильное устройство. Управление осуществляется с помощью курсора мыши, клавиатуры или касания экрана. Программа предоставляется бесплатно на 14 дней, после чего следует купить лицензию.
Установка CryptoPro на Linux
Установка КриптоПро на Linux производится при помощи терминала или пользовательского интерфейса.
Терминал
Пользовательский интерфейс
- Скачать архив с официального сайта разработчика.
- В загруженной папке выбрать установочный файл, кликнуть правой кнопкой мыши и выбрать «Извлечь».
- В распакованной папке найти файл install_gui.sh.
- Кликнуть правой кнопкой мыши и выбрать «Свойства».
- Во вкладке «Права» отметить пункты напротив «Выполнять» или подобного пункта, разрешающего запуск файла.
- Далее закрыть окно «Свойства».
- Кликнуть дважды левой кнопкой мыши для установки КриптоПро.
- В поле установки нажать «Next».
- Отметить требуемые пакеты, нажать «Next», далее «Install»:
- После установки требуется ввести серийный номер с помощью команды:
/opt/cprocsp/sbin/amd64/cpconfig -license -set <серийный_номер>. - Нажать Exit.
Купить полную лицензию продукта КриптоПро рекомендуем в нашем интернет-магазине. Оставьте короткую заявку, для бесплатной консультации специалиста.
Что ещё понадобится для работы с электронной подписью
Как установить и настроить КриптоПро Browser Plug-in, читайте в нашей статье.
Плагин для Линукс
Чтобы корректно работать с электронной подписью в интернете, понадобится плагин для браузера и специальная утилита alien. Для этого требуется выполнить следующие шаги:
- Активировать alien — sudo apt install alien;
- Бесплатно скачать модуль Browser plug-in на сайте КриптоПро;
- Распаковать сохранённый архив — cades_linux_amd64.zip;
- Перейти в папку с файлами;
- Открыть Терминал через контекстное меню и задать команду для преобразования rpm в deb-пакеты — sudo alien -kci cprocsp-pki-cades_2.0.0-2_amd64.deb;
- После данных действий установка будет завершена, а подпись готова к работе.
Купить подходящую лицензию продукта КриптоПро для Linux рекомендуем в нашем интернет-магазине. Оставьте короткую заявку, для бесплатной консультации специалиста.
Установка локали
Установите локаль ru_RU.CP1251 (кодировка windows 1251 для linux). Для этого введите команду:
sudo dpkg-reconfigure locales
Установите * (звездочку) с помощью клавиши «Пробел» напротив значения ru_RU.CP1251:
С помощью клавиши TAB перейдите на нижнюю строку и нажмите Ок:
Локаль успешно установлена: