- Доступ к сайту Госуслуг
- Генерирование ключей и получение сертификата
- Рутокен ЭЦП 2.0
- JaCarta
- ESMART Token ГОСТ
- Установка плагина IFCPlugin
- Сертификаты КриптоПро
- Авторизация на сайте Госуслуг
- Дополнительно
- Astra linux госуслуги настройка
- Установка и настройка КриптоПро ЭЦП Browser plug in в Astra Linux 1.6. Для подключения к Госуслугам.
Доступ к сайту Госуслуг
Для аутентификации через ЕСИА (https://esia.gosuslugi.ru/) потребуется токен с парой ключей и сертификатом, а также плагин для работы с порталом государственных услуг IFCPlugin.
IFCPlugin обращается к библиотеке PKCS#11 работающей, как правило, с pkcs15 токенами. Это может быть аппаратный ключ защиты (Рутокен ЭЦП, Jacarta ГОСТ и т.д.), контейнер криптопровайдера КриптоПро, или любой подходящий контейнер с поддержкой ГОСТ. Подписание и шифрование происходит внутри контейнера (средствами аппаратного ключа или средствами криптопровайдера).
Генерирование ключей и получение сертификата
Для получения сертификата необходимо:
- Сгенерировать ключ на токене в формате, совместимом с форматом плагина Госуслуг, то есть через библиотеку PKCS#11.
- Сформировать запрос на квалифицированный сертификат.
- Транспортировать запрос в аккредитованный УЦ (тестовый УЦ не подойдет).
- Получить сертификат и записать его на токен в формате, совместимом с форматом плагина Госуслуг, то есть через библиотеку PKCS#11.
Рутокен ЭЦП 2.0
Для генерации ключей, формирования запроса на сертификат и записи сертификата на Рутокен ЭЦП можно воспользоваться ПО «Рутокен плагин», (работает через библиотеку PKCS#11 и совместим с плагином Госуслуг) и ПО «Центр регистрации Рутокен» ra.rutoken.ru.
JaCarta
Для генерации ключей, формирования запроса на сертификат и записи сертификата на JaCarta 2 ГОСТ можно воспользоваться утилитой pkcs11-tool: JaCarta/ГОСТ, либо криптоПро: JaCarta/ГОСТ#КриптоПро, для JaCarta PKI: JaCarta/PKI#КриптоПро
ESMART Token ГОСТ
Для генерации ключей, формирования запроса на сертификат и записи сертификата на ESMART Token ГОСТ можно воспользоваться утилитой PKIClientCli: ESMART#Утилита_PKIClientCli
Установка плагина IFCPlugin
Для установки плагина для работы с порталом государственных услуг необходимо:
- Загрузить плагин со страницы https://ds-plugin.gosuslugi.ru/plugin/upload/ (по умолчанию начнется скачивание deb-пакета, но на странице доступны и rpm-пакеты: rpm пакет 64-bit и rpm пакет 32-bit:
- Установить плагин, выполнив из папки со скачанным плагином команду (под правами пользователя root):
mkdir /etc/chromium/native-messaging-hosts ln -s /etc/opt/chrome/native-messaging-hosts/ru.rtlabs.ifcplugin.json /etc/chromium/native-messaging-hosts/
ln -s /opt/cprocsp/lib/amd64/libcppkcs11.so.4.0.4 /usr/lib/mozilla/plugins/lib/libcppkcs11.so
Сертификаты КриптоПро
- lsb-cprocsp-pkcs11-64-4.0.9929-5 (для полноценной поддержки ГОСТ-2012 лучше использовать версию 4.0.9944)
- ifcplugin-3.0.6.0-release
Необходимо добавить в файл /etc/ifc.cfg в блок params:
(блок в данном файле выделяется круглыми скобками, разделы блока выделяются фигурными, после закрывающей фигурной скобки раздела, если это не последний раздел в блоке, ставится запятая)
(если фигурная скобка последняя в конфигурационном файле, то запятой после нее быть не должно!)
Журнал работы плагина можно найти в файле /var/log/ifc/engine_logs/engine.log .
Авторизация на сайте Госуслуг
Для авторизации на сайте Госуслуг с помощью электронной подписи следует:
- В браузере Firefox на странице авторизации Госуслуг нажать на ссылку «Вход с помощью электронной подписи»:
- Подключить токен с ключом к компьютеру, нажать кнопку «Готово»:
- Выбрать сертификат ключа проверки электронной подписи, щёлкнув левой кнопкой мыши по строке с сертификатом:
- Ввести Пин-код пользователя и нажать кнопку «Продолжить»:
Дополнительно
Astra linux госуслуги настройка
Рассматриваемая конфигурация:
- один из поддерживаемых КриптоПро CSP дистрибутивов Linux (x86, x64)
- КриптоПро CSP 4.0 R4 = 4.0.9963 (необходимо использовать КриптоПро CSP 4.0 не ниже сборки 4.0.9963 или Криптопро CSP 5.0 не ниже сборки 5.0.11319)
- плагин для работы с порталом государственных услуг (IFCPlugin)
- ключевой контейнер с соответствующим квалифицированным сертификатом внутри
- один из браузеров (рекомендуется использовать последнюю доступную версию):
- Chromium
- Google Chrome (только x64)
- Спутник (только x64)
- Chromium GOST (только x64)
- Яндекс.Браузер (только x64)
- Opera (только x64)
- Mozilla Firefox
Порядок настройки:
1) Установить основные пакеты КриптоПро CSP 4.0 R4 ( x86-rpm , x86-deb , x64-rpm , x64-deb ) запуском скрипта install.sh,
пакеты lsb-cprocsp-pkcs11, cprocsp-rdr-gui-gtk и
необходимые пакеты для поддержки используемых ключевых носителей из состава дистрибутива КриптоПро CSP (если эти пакеты не установлены):
Ключевой носитель Дополнительные необходимые пакеты флеш-накопитель, жесткий диск — смарт-карты (например, ОСКАР, Магистра) cprocsp-rdr-pcsc Рутокен Lite cprocsp-rdr-pcsc, cprocsp-rdr-rutoken Рутокен S cprocsp-rdr-pcsc, cprocsp-rdr-rutoken, ifd-rutokens ESMART token cprocsp-rdr-pcsc, cprocsp-rdr-esmart eToken, JaCarta cprocsp-rdr-pcsc, cprocsp-rdr-jacarta . . При необходимости для удовлетворения зависимостей установить требуемые пакеты штатными средствами ОС.
2) Установить плагин для работы с порталом государственных услуг (IFCPlugin) ( x86-rpm , x86-deb , x64-rpm , x64-deb ) (если он не установлен).
При необходимости для удовлетворения зависимостей установить требуемые пакеты штатными средствами ОС.
3) Загрузить файл конфигурации для IFCPlugin ( x86 , x64) в домашнюю директорию текущего пользователя.
4) Подключить ключевой носитель (флеш-накопитель, Рутокен, ESMART token и т.д.).
5) Выполнить в терминале команды:
sudo cp ~/ifcx86.cfg /etc/ifc.cfg
/opt/cprocsp/bin/ia32/csptestf -absorb -certs -autoprovsudo cp ~/ifcx64.cfg /etc/ifc.cfg
/opt/cprocsp/bin/amd64/csptestf -absorb -certs -autoprov6) Для Chromium/Спутник/Яндекс.Браузер также необходимо выполнить в терминале команду:
sudo cp /etc/opt/chrome/native-messaging-hosts/ru.rtlabs.ifcplugin.json /etc/chromium/native-messaging-hosts
7) Проверить в используемом браузере, что включено расширение — Расширение для плагина Госуслуг.
Расширение для Mozilla Firefox (установить можно открытием ссылки в Firefox или перетаскиванием файла раширения в окно Firefox).
8) На странице входа на портал Госуслуг:
- нажать на ссылку Войти с электронной подписью,
- нажать на кнопку Готово,
- выбрать нужный сертификат электронной подписи,
- в окне Ввод пин-кода ввести любое значение (оно на даннном этапе не проверяется) и нажать кнопку Продолжить,
- при возникновении окна КриптоПро CSP ввести пин-код для ключевого контейнера в поле Пароль: и нажать кнопку OK.
Установка и настройка КриптоПро ЭЦП Browser plug in в Astra Linux 1.6. Для подключения к Госуслугам.
Спойлер: В раздачу входят сама операционная система, документация от разработчика и диск со средствами разработки.
Спойлер: Установка и настройка КриптоПро ЭЦП Browser plug in в Astra Linux 1.6. Для подключения к Госуслугам. Видео на ютубе
1. устанавливаем необходимые стандартные библиотеки
Код:
sudo su
sudo apt update
sudo apt install lsb lsb-core alien2. Качаем КриптоПро CSP 4.0R2 linux x64 предварительно зарегистрировавшись
3. Распаковываем и устанавливаем
Код:
cd ~/Downloads
tar -xf linux-amd64_deb.tgz
cd linux-amd64_deb
sudo ./install.sh
# GUI элементы для работы с сертификатами
sudo dpkg -i cprocsp-rdr-gui-gtk-64_4.0.0-4_amd64.deb
# Поддержка алгоритмов класса 2
sudo dpkg -i lsb-cprocsp-kc2-64_4.0.0-4_amd64.deb4. готово
p.s. удалить можно выполнив код в этой же директории:
Код:sudo ./uninstall.sh
sudo rm -rf /opt/cprocsp
sudo rm -rf /etc/opt/cprocsp
sudo rm -rf /var/opt/cprocsp
sudo rm /opt/google/chrome/extensions/iifchhfnnmpdbibifmljnfjhpififfog.json
sudo rm /etc/chromium/native-messaging-hosts/ru.cryptopro.nmcades.json
sudo rm /etc/opt/chrome/native-messaging-hosts/ru.cryptopro.nmcades.json
sudo rm /usr/lib/firefox-addons/plugins/libnpcades.so
sudo rm /usr/share/chromium-browser/extensions/iifchhfnnmpdbibifmljnfjhpififfog.json
sudo rm /usr/share/chromium/extensions/iifchhfnnmpdbibifmljnfjhpififfog.jsonУстановка тестовых сертификатов
1. Качаем корневой сертификат
2. Устанавливаем его
Код:
/opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file certnew.cerСмотрим доступные контейнеры
Код:
/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifycontext -fqcnУстанавливаем сертификат:
Код:
/opt/cprocsp/bin/amd64/certmgr -inst -store umy -file ~/Downloads/test\ 8.12.2016\ KC1\ CSP.pem -cont ‘\\.\HDIMAGE\70275af7-e10b-bed3-b1b3-88641f09f3a5’1. Качаем плагин версии 2.0
2. Распаковывем и устанавливаем
Код:
cd ~/Downloads
mkdir cades_linux_amd64
tar -xf cades_linux_amd64.tar.gz -C cades_linux_amd64
cd cades_linux_amd64
sudo alien -kci cprocsp-pki-2.0.0-amd64-cades.rpm
sudo alien -kci cprocsp-pki-2.0.0-amd64-plugin.rpm
# С первого раза не все файлы копируются, например не копируется /opt/cprocsp/lib/amd64/libnpcades.so
sudo alien -kci cprocsp-pki-2.0.0-amd64-plugin.rpm3. Копируем файл libnpcades.so в папку с плагинами
Код:
sudo cp /opt/cprocsp/lib/amd64/libnpcades.so /usr/lib/firefox-addons/plugins/libnpcades.so4. Перезапускаем/запускаем firefox
6. Выбираем вкладку Plugins.
7. У плагина CryptoPro CAdES plugin ставим значение Always Activate
8. Проверяем работоспособность на demo странице, либо на странице генерации тестового сертификата
Инструкция по установке КриптоПро Browser Plug-In 2.0 в Google Chrome 54.0.2840.100 (64-bit)
Выполняем, если не выполнены пункты 1 и 2 из предыдущего раздела.
Устанавливаем плагин из магазина: CryptoPro Extension for CAdES Browser.
Если на демо странице пишет что-то вроде:
Код:
Ошибка при открытии хранилища: The system cannot find the file specified. (0x80070002)Значит у вас не установлено ни одного сертификата.
Список установленных компонентов:
Код:
dpkg -l | grep cspВывод установленных сертификатов:
Код:
/opt/cprocsp/bin/amd64/certmgr -listУстановка корневого сертификата УЦ:
Код:
sudo /opt/cprocsp/bin/amd64/certmgr -inst -store uroot -file путь_к_файлу_с_сертификатомПеречисление доступных контейнеров:
Код:
/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifycontext -fqcnУстановка личного сертификата:
Код:
/opt/cprocsp/bin/amd64/certmgr -inst -store umy -file путь_к_файлу_с_сертификатом -cont ‘имя_контейнера’Если в контейнере присутствует сертификат, то для его установки личного сертификата можно использовать команды:
Код:
/opt/cprocsp/bin/amd64/certmgr -inst -cont ‘имя_контейнера’Установить все сертификаты в хранилище Личное uMy из доступных контейнеров:
Код:
/opt/cprocsp/bin/amd64/csptestf -absorb -certsДобавление хранилища на жёстком диске:
Код:
sudo /opt/cprocsp/sbin/amd64/cpconfig -hardware reader -add HDIMAGE storeГенерация пары закрытого/открытого ключа в хранилище:
Код:
/opt/cprocsp/bin/amd64/csptest -keyset -newkeyset -cont ‘\\.\HDIMAGE\main’ -provtype 75 -provider «Crypto-Pro GOST R 34.10-2001 KC1 CSP»Создание запроса на подпись сертификата:
Код:
/opt/cprocsp/bin/amd64/cryptcp -creatrqst -dn «E=email, C=RU, CN=localhost, SN=company» -nokeygen -both -ku -cont ‘\\.\HDIMAGE\main’ main.reqЗагрузка подписанного сертификата к паре закрытого/открытого ключа:
Код:
/opt/cprocsp/bin/amd64/certmgr -inst -file main.cer -store umy -cont ‘\\.\HDIMAGE\main’Если при попытке сгенерировать сертификат по алгоритму *KC2*, например с Crypto-Pro GOST R 34.10-2001 KC2 CSP возникает ошибка:
Произошла ошибка при создании запроса на сертификат. Проверьте, что выбранный поставщик служб шифрования поддерживает заданные вами параметры и введены правильные данные.
Предполагаемая причина:
(нет вариантов)
Ошибка: 0x00000000 — (нет данных)то у вас нет аппаратного датчика случайных чисел, а работает только биологический датчик случайных чисел (который может быть использован в КриптоПро КС1).