Linux криптопро подписать строку

Работа с КриптоПро на linux сервере

Ссылки

Лицензия

Для установки другой лицензии (под root):

Корневые сертификаты

Просмотр корневых сертификатов

Добавление корневых сертификатов (под root) из файла cacer.p7b

Необходимо последовательно добавить все сертификаты

Сертификаты

Список установленных сертификатов

certmgr -list , например:

Добавление реального сертификата

Добавить только сертификат (только проверка ЭЦП):

Добавление реального сертификата с привязкой к закрытому ключу и возможностью подписывать документы

Закрытый ключ состоит из шести key-файлов:

Способ с дискетой или флешкой

Скопировать в корень дискеты или флэшки сертификат и приватный ключ (из каталога 999996.000 , 999996 — название (alias) контейнера):

Выполнить команду по копированию ключа с флэшки на диск, ключ попадет в пользовательское хранилище My .

gate@example.com — то, что прописано в поле E сертификата (можно посмотреть командой keytool —printcert -file /path/to/cert/client.cer ):

С жесткого диска

Скопировать приватный ключ в хранилище (контейнер), где — имя пользователя linux:

Поставить «минимальные» права:

Узнать реальное название контейнера:

Ассоциировать сертификат с контейнером, сертификат попадет в пользовательское хранилище My :

Если следующая ошибка, нужно узнать реальное название контейнера (см. выше):

Установить сертификат УЦ из-под пользователя root командой:

Проверка успешности установки закрытого ключа

Добавление тестового сертификата

Ввести пароль на контейнер test123 .

Ввести пароль на контейнер. По-умолчанию: 12345678

Удаление сертификата

Проверка сертификата

Просмотр всех атрибутов сертификата

В cryptcp нет необходимых инструментов для получения всех атрибутов сертификата. Поэтому следует использовать openssl , но настроив его.

Получаем SHA 1 хеши:

В цикле извлекаем сертификаты:

Настройка openssl для поддержки ГОСТ:

В файл /etc/ssl/openssl.cnf

Экспорт сертификатов на другую машину

Закрытые ключи к сертификатам находятся тут: /var/opt/cprocsp/keys . Поэтому эти ключи переносятся просто: создаем архив и переносим на нужную машину в тот же каталог.

Экспорт самих сертификатов (если их 14):

Переносим эти файлы на машину и смотрим, какие контейнеры есть:

И как обычно, связываем сертификат и закрытый ключ:

Если закрытый ключ и сертификат не подходят друг к другу, будет выведена ошибка:

Если все успешно:

Если нет закрытого ключа, то просто ставим сертификат:

Подписание документа ЭЦП

Пример создания ЭЦП (по SHA1 Hash):

[ReturnCode: x] Описание Возвращаемый код завершения в баше $?
0 успешно 0
0x8010006b Введен неправильный PIN 107
0x2000012d Сертификат не найден 45
0x20000065 Не удалось открыть файл 101

Проверка подписи ЭЦП

Для верифицирования сертификатов нужен сертификат удостоверяющего центра и актуальный список отзыва сертификатов, либо настроенный для этого revocation provider.

Корневой сертификат УЦ, список отзыва сертификата является одним из реквизитов самого сертификата.

Контрагенты когда открывают подписи в КриптоАРМ используют revocation provider, он делает проверки отзыва сертификата онлайн. Как реализована проверка в Шарепоинте не знаю. Знаю только что используется библиотека Крипто.Net

Проверка конкретной подписи из локального хранилища по его хешу:

Проверить, взяв сертификат из file1.sig , подпись файла file2.sig . Практически, надо использовать один и тот же файл:

[ReturnCode: x] Текст Описание Возвращаемый код завершения в баше $?
0 Успешно 0
0x80091004 Invalid cryptographic message type Неправильный формат файла 4
0x80091010 The streamed cryptographic message is not ready to return data Пустой файл 16

Получение исходного файла

Получение исходного файла (сообщения):

Будет ругаться на сертификат (так как не будет проверки), но подпись удалит. Вариант с проверкой:

Источник

Операционные системы Astra Linux

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

Операционные системы Astra Linux предназначены для применения в составе информационных (автоматизированных) систем в целях обработки и защиты 1) информации любой категории доступа 2) : общедоступной информации, а также информации, доступ к которой ограничен федеральными законами (информации ограниченного доступа).

1) от несанкционированного доступа;
2) в соответствии с Федеральным законом от 27.07.2006 № 149-ФЗ «Об информации, информационных технологиях и о защите информации» (статья 5, пункт 2).

Операционные системы Astra Linux Common Edition и Astra Linux Special Edition разработаны коллективом открытого акционерного общества «Научно-производственное объединение Русские базовые информационные технологии» и основаны на свободном программном обеспечении. С 17 декабря 2019 года правообладателем, разработчиком и производителем операционной системы специального назначения «Astra Linux Special Edition» является ООО «РусБИТех-Астра».

На web-сайтах https://astralinux.ru/ и https://wiki.astralinux.ru представлена подробная информация о разработанных операционных системах семейства Astra Linux, а также техническая документация для пользователей операционных систем и разработчиков программного обеспечения.

Мы будем признательны Вам за вопросы и предложения, которые позволят совершенствовать наши изделия в Ваших интересах и адаптировать их под решаемые Вами задачи!

Репозитория открытого доступа в сети Интернет для операционной системы Astra Linux Special Edition нет. Операционная система распространяется посредством DVD-дисков.

Информацию о сетевых репозиториях операционной системы Astra Linux Common Edition Вы можете получить в статье Подключение репозиториев с пакетами в ОС Astra Linux и установка пакетов.

В целях обеспечения соответствия сертифицированных операционных систем Astra Linux Special Edition требованиям, предъявляемым к безопасности информации, ООО «РусБИтех-Астра» осуществляет выпуск очередных и оперативных обновлений.

Очередные обновления (версии) предназначены для:

  • реализации и совершенствования функциональных возможностей;
  • поддержки современного оборудования;
  • обеспечения соответствия актуальным требованиям безопасности информации;
  • повышения удобства использования, управления компонентами и другие.

Оперативные обновления предназначены для оперативного устранения уязвимостей в экземплярах, находящихся в эксплуатации, и представляют собой бюллетень безопасности, который доступен в виде:

  1. инструкций и методических указаний по настройке и особенностям эксплуатации ОС, содержащих сведения о компенсирующих мерах или ограничениях по примене- нию ОС при эксплуатации;
  2. отдельных программных компонентов из состава ОС, в которые внесены изменения с целью устранения уязвимостей, инструкций по их установке и настройке, а также информации, содержащей сведения о контрольных суммах всех файлов оперативного обновления;
  3. обновлений безопасности, представляющих собой файл с совокупностью программных компонентов из состава ОС, в которые внесены изменения с целью устранения уязвимостей, а также информации, содержащей сведения о контрольных суммах всех файлов обновлений безопасности, указания по установке, настройке и особенностям эксплуатации ОС с установленными обновлениями безопасности.

Ввиду совершенствования нормативно-правовых документов в области защиты информации и в целях обеспечения соответствия информационных актуальным требованиям безопасности информации, а также обеспечения их долговременной эксплуатации, в том числе работоспособности на современных средствах вычислительной техники, рекомендуется на регулярной основе планировать проведение мероприятий по применению очередных и оперативных обновлений операционной системы.

Источник

Установка и настройка подписи ЭЦП через КриптоПро CSP на Linux(Ubuntu)

1. Чтобы установить КриптоПро CSP: 1. Зарегистрируйтесь на сайте http://cryptopro.ru/products/csp/downloads, скачайте программу установки и разархивируйте ее.

Информация по установке

Выполните предварительно команды в терминале под суперпользователем:

Для обновления списка доступных пакетов до последних изменений в репозитариях набрать следующее:

sudo apt-get update

Для обновления всех установленных пакетов программ:

sudo apt-get upgrade

Скачанные пакеты необходимо разархивировать:

После при помощи команды установить пакеты:

sudo sh install_gui.sh

При котором откроется терминал с возможностью установки через GUI.

Лучше поставить пакеты вручную:

sudo dpkg -i lsb-cprocsp-devel_4.0.0-5_all.deb

sudo dpkg -i cprocsp-curl-64_4.0.0-4_amd64.deb

sudo apt-get install libpangox-1.0-dev

sudo dpkg -i cprocsp-rdr-gui-gtk-64_4.0.0-4_amd64.deb

sudo dpkg -i cprocsp-rdr-rutoken-64_4.0.0-4_amd64.deb

sudo dpkg -i ifd-rutokens_1.0.1_amd64.deb

sudo dpkg -i lsb-cprocsp-base_4.0.0-4_all.deb

sudo dpkg -i lsb-cprocsp-capilite-64_4.0.0-4_amd64.deb

2. Скачать утилиту администрирования Рутокен по ссылке: https://www.rutoken.ru/support/download/drivers-for-nix/
Прямая ссылка: https://www.rutoken.ru/support/download/get/rtDrivers-x64-deb.html

Для того чтобы установить драйверы Рутокен для Linux(Ubuntu), загрузите установочный файл. После завершения процесса установки подключите Рутокен к компьютеру.


2.1 Произвести установку в систему.

Для deb-based систем (Debian, Ubuntu, Linux Mint и др.) это библиотека libccid не ниже 1.3.11, пакеты pcscd и libpcsclite1. Для установки указанных пакетов запустите терминал и выполните команду:

sudo apt-get install libccid pcscd libpcsclite1

После выполнить установку пакета утилиты администрирования рутокен:

sudo dpkg -i ifd-rutokens_1.0.4_amd64.deb

Информация по установке

В редких случаях если не определяется Рутокен в утилите администрирования, необходимо перезагрузить систему, после данных манипуляций Рутокен должен определиться в системе.

Для обеспечения работоспособности электронных идентификаторов Рутокен ЭЦП ряде дистрибутивов GNU/Linux, может потребоваться добавить запись об устройстве в конфигурационный файл libccid. Расположение Info.plist в файловой системе:

GNU/Linux: /usr/lib/pcsc/drivers/ifd-ccid-bundle/Contents/Info.plist

Info.plist представляет собой текстовый файл, который открывается любым текстовым редактором с правами суперпользователя.

Для работы электронных идентификаторов Рутокен ЭЦП необходимо добавить в файл следующие строки (данные строки стандартно уже прописаны в Linux(Ubuntu), необходимо проверить есть ли такие данные, если нет то прописать):

Массив () Добавленная строка

ifdFriendlyName Aktiv Rutoken ECP

Установите утилиту pcsc_scan (обычно она входит в пакет pcsc-tools) и запустите ее. Если устройство работает корректно, то в логе утилиты присутствует устройство Aktiv Rutoken ECP:

sudo apt-get install pcsc-tools

3. Программа КриптоПро ЭЦП Browser plug-in предназначена для создания и проверки электронной подписи на веб-страницах. Чтобы установить КриптоПро ЭЦП Browser plug-in:

3.1 Скачайте необходимый архив с пакетами установки, в зависимости от разрядности и версии используемой ОС, с сайта http://www.cryptopro.ru/products/cades/downloads.

3.2 Разархивируйте пакеты с помощью команды:

3.3 Установить пакеты с помощью соответствующей команды:

Информация по возможным проблемам:

Если во время установки возникнут проблемы или ошибки, то выполнить: dpkg —force-overwrite -i .deb

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

dpkg —force-overwrite -i cprocsp-pki-cades_2.0.0_amd64.deb

Установить пакет alien:

sudo apt-get install alien

sudo alien -kci cprocsp-pki-2.0.0-amd64-cades.rpm

sudo alien -kci cprocsp-pki-2.0.0-amd64-plugin.rpm

При необходимости, раздать права на пакеты через команды в терминале:

sudo chmod 777 .deb

Для пакетов установки:

sudo chmod 777 cprocsp-pki-2.0.0-amd64-cades.deb

sudo chmod 777 cprocsp-pki-2.0.0-amd64-plugin.deb

3.4 Также необходимо выполнить:

sudo dpkg -i cprocsp-pki-2.0.0-amd64-cades.deb

sudo dpkg -i cprocsp-pki-2.0.0-amd64-plugin.deb

Сертификат лучше получить через терминал вручную, так как поддержки ActiveX нет в UNIX

/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -fqcn -verifyc

sudo /opt/cprocsp/bin/amd64/csptest -keyset -newkeyset -provtype 80 -cont ‘\\.\HDIMAGE\Test’

/opt/cprocsp/bin/amd64/cryptcp -creatrqst -dn «INN=007814508921, E=andrew@ya.ru, C=RU, CN=Ахунов Азат ААа, SN=Ахунов» -nokeygen -both -ku -cont ‘Test’ cert.req

Содержимое полученного файла cert.req, вносим https://www.cryptopro.ru/certsrv/certrqxt.asp и скачиваем полученный сертификат. Его добавляем в наш контейнер

sudo /opt/cprocsp/bin/amd64/certmgr -inst -store uRoot -file certnew.p7b

4. Cертификат тестового ключа подписи, который возможно получить на странице тестового центра, по ссылке: https://www.cryptopro.ru/certsrv/certrqma.asp
4.1 Нажать кнопку выдать и необходимо чтобы Рутокен был подключен к устройству на которое выдается ключ и сертификат.

Выбрать устройство Рутокен:

Набрать Pin-код на устройство Рутокен, стандартные пароли к контейнеру 87654321 или 12345678.

Сформировать случайные числа при помощи нажатия клавиш и движениями мыши над этим окном:

4.2 Проверить сообщение об успешной установке.
5. Проверка работы плагина в браузере

Google Chrome Версия 61.0.3163.79 (Официальная сборка), (64 бит)

Проверка ключа сертификата возможна по ссылке: https://www.cryptopro.ru/sites/default/files/products/cades/demopage/simple.html
6. При подписывании в системе РМИС, выходит окно с подтверждением и с выбором сертификата:
6.1 Необходимо выбрать сертификат и нажать кн. Подписать.

6.2 Выйдет уведомление о успешном подписании: Выполнено! Отчет успешно подписан.

Где возможно через кнопку Загрузить, загрузить выбранный подписанный документ.

Файл протокола, который подписан возможно проверить через средства приложения VipNet CryptoFile (Windows) , нажать в приложении Открыть выбрать открыть подписанный файл в формате .pdf и выбрать протокол в формате .sig пример:

6.3 Сформировать отчет: Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider

Отчет о проверке ЭП

Время создания отчета: 01.03.17 22:54

  • Проверены файлы: C:/Users/skygb/Downloads/protocol.sig и C:/Users/skygb/Downloads/protocol.pdf
  • ЭП: ВЕРНА

Время подписи: 01.03.17 22:55

Статус сертификата: ДЕЙСТВИТЕЛЕН

Сведения о сертификате

Кому выдан: Булат

Кем выдан: CRYPTO-PRO Test Center 2

Серийный номер: 01D292C2940768F00000000D00050001

Источник

Читайте также:  Windows command line press any key
Оцените статью