Linux менеджер криптографии 1с

Работа платформы 1С:Предприятие с КриптоПро в ОС Linux

В статье рассматриваются некоторые особенности работы КриптоПро в ОС Linux и взаимодействия платформы 1С:Предприятие с КриптоПро.

В настоящее время поддержка криптографии при работе на ОС Linux ограничена возможностью использования только КриптоПро (http://www.cryptopro.ru). Платформа 1С:Предприятие обращается к модулю криптографии при создании объекта МенеджерКриптографии. В конструкторе объекта МенеджерКриптографии второй параметр означает путь к библиотеке модуля криптографии, реализующий функциональность, необходимую платформе. Установленный модуль криптографии КриптоПро может содержать библиотеку libcapilite.so — тогда следует указать путь к этой библиотеке.

Однако, в текущих версиях КриптоПро библиотека libcapilite.so отсутствует. Разработчики КриптоПро разделили функциональность, изначально содержавшуюся в одной библиотеке, на несколько библиотек. К ним относятся: libcapi10.so, libcapi20.so, libcapiext.so. Для того, чтобы платформа 1С:Предприятие могла использовать библиотеку КриптоПро нужно выполнить команду по созданию одной библиотеки из нескольких.

gcc — shared — Wl , — soname , libcapi 10 . so . 3 . 6 . 1 , libcapi 20 . so . 3 . 6 . 1 — o libcapilite . so

Команда выполняется в каталоге lib/ia32 или lib/amd64 в зависимости от разрядности установленного модуля криптографии.

Для работы команды gcc может понадобиться дополнительная установка gcc из репозитория используемого дистрибутива Linux. Например, для CentOS это команда

Запуск Firefox для работы с КриптоПро

Платформа 1С:Предприятие может работать с модулем криптографии на клиентской стороне через веб-клиент. Веб-клиент — это браузер, которому нужно установить дополнение — расширение для работы с криптографией. Пример можно посмотреть в демонстрационной конфигурации платформы 1С:Предприятие — в разделе Предприятие в панели действий есть кнопка «Установить расширение работы с криптографией».

В случае запуска браузера Firefox при обращении к объекту МенеджерКриптографии может произойти аварийный выход из браузера. При этом, если браузер был запущен из консоли, в консоли будут следующие сообщения:

Warning: Fatal Error:
_XmGetDefaultDisplay cannot be used prior to VendorS.Initialize, returns NULL
Warning: Urm__OpenHierarchy: Display not yet opened — Invalid URM code
Error: MrmOpenHierarchy failed: can’t open hierarchy.

Такое сообщение означает, что модуль криптографии КриптоПро попытался вызвать графическую функцию из библиотеки motif, в которой произошла ошибка.

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

Источник

Linux менеджер криптографии 1с

Для работы на Linux рекомендуется использовать последнюю сертифицированную версию КриптоПро CSP.

Также для работы через браузер потребуется установка расширения для работы с файлами, а также крипторасширение – подробнее см. п. 3 данной статьи.

Для работы с системой маркировки и для подачи заявления на сертификат потребуется установка внешней компоненты – установка запускается автоматически при первом обращении к указанному функционалу.

Читайте также:  Xrdp linux разрешение экрана

1. Загрузка КриптоПро CSP для Linux (на примере ОС Ubuntu).

Для загрузки криптопровайдера необходимо:

1.1 Авторизоваться на официальном сайте производителя.

1.2 Перейти на вкладку «Скачать» и выбрать «КриптоПро CSP».

LinuxCSPCrypto-1.png

1.3 Выбрать последнюю сертифицированную версию КриптоПро CSP для Linux соответствующую разрядности системы, а также формату пакетов и сохранить дистрибутив.

LinuxCSPCrypto-2.png

2. Установка КриптоПро CSP для Linux.

2.1. Открыть «Загрузки» и распаковать скаченный архив linux-amd64_deb.tgz в текущую папку.

LinuxCSPCrypto-3.png

2.2 Выбрать правой кнопкой мыши распакованную папку linux-amd64_deb и выполнить команду «Открыть в терминале».

LinuxCSPCrypto-4.png

2.3 Для запуска мастера установки КриптоПро в терминале требуется выполнить команду sudo ./install_gui.sh

LinuxCSPCrypto-5.png

При необходимости процесс установки можно полностью инициировать через терминал

cd Загрузки – перейти в каталог со скаченным архивом linux-amd64_deb.tgz

tar -zxf ./linux-amd64_deb.tgz – извлечь содержимое архива в текущую папке

cd linux-amd64_deb – перейти в распакованную папку

sudo ./install_gui.sh – запустить мастер установки

2.4 Откроется установщик КриптоПро CSP. Нажимаем «Далее».

LinuxCSPCrypto-7.png

2.5 Если на данном рабочем месте будет осуществляться работа со съёмными токенами, то в наборе для установки следует отметить «Поддержка токенов и смарт-карт» (для выбора следует использовать пробел). Затем нажимаем «Далее».

LinuxCSPCrypto-8.png

2.6 На следующем шаге нажимаем «Установить».

LinuxCSPCrypto-9.png

2.7 Установка произошла успешно. Нажимаем «ОК».

LinuxCSPCrypto-10.png

3. Произвести настройки программы для работы с электронной подписью в 1С.

Настройка программы для работы с электронной подписью осуществляется в разделе Администрирование – Обмен электронными документами – Настройки электронной подписи и шифрования – Программы.

LinuxCSPCrypto-11.png

В списке программ необходимо открыть КриптоПро CSP (ГОСТ 2012/256) и выбрать КриптоПро CSP (ГОСТ 2012/256) КС1

LinuxCSPCrypto-12.png

Если используется клиент-серверный режим запуска совместно с КриптоПРО версии 4, и пользователь планирует использовать информационную базу с рабочих мест с ОС Windows, то следует добавить в КС1-Провайдер имя программы в ожидаемом для ОС Windows виде:

cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider’ -add string ‘Image Path’ /opt/cprocsp/lib/ia32/libcsp.so
cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider’ -add string ‘Function Table Name’ CPCSP_GetFunctionTable
cpconfig -ini ‘\cryptography\Defaults\Provider\Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider’ -add long Type 80

Затем следует указать путь к библиотекам программы криптографии, выбрав значение «Стандартный путь для Linux». В актуальных версиях Библиотеки Стандартных Подсистем данное поле не является обязательным к заполнению. Значение по умолчанию опрашивается автоматически.

LinuxCSPCrypto-13.png

/opt/cprocsp/lib/amd64/libcapi10.so:/opt/cprocsp/lib/amd64/libcapi20.so — стандартный путь к программе КриптоПро CSP для Linux

Если при установке КриптоПро были выбраны нестандартные пути для установки – в данном поле необходимо указывать те пути, по которым размещены библиотеки КриптоПро.
Также хотелось бы отметить, что у пользователя, из-под которого будет запускаться 1С, должны быть назначены разрешающие права доступа на папки, в которых расположены библиотеки КриптоПро.

Читайте также:  Linux edit pdf text

Для работы в веб-клиенте требуется установка внешней компоненты для работы с криптографией под конкретный браузер.

LinuxCSPCrypto-42.png

4. Работа с сертификатами на Linux с использованием КриптоПро.

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

4.1 Контейнер хранится на аппаратном ключевом носителе (токене)

4.1.1 Для работы с ключевыми носителями потребуется установить дополнительные библиотеки через соответствующие команды в Терминале.

apt-get install libpcsclite1 pcscd libccid

4.1.2 После установки необходимых пакетов пользователю требуется вставить токен, открыть Инструменты КриптоПро CSP и перейти на вкладку «Контейнеры». Необходимый контейнер должен отображаться с соответствующим типом считывателя.

LinuxCSPCrypto-14.1.png

В списке контейнеров необходимо выбрать интересующий и нажать «Установить сертификат».

LinuxCSPCrypto-14.2.png

Открытый ключ будет автоматически установлен в хранилище и доступен для просмотра на вкладке «Сертификаты»

Если кнопка «Установить сертификат» не активна, это означает, что в контейнере отсутствует открытый ключ. Для решения данной проблемы следует перейти к п.6.1 данной инструкции.

4.2 Контейнер хранится на съёмном носителе.

4.2.1 Пользователю требуется вставить съемный носитель, открыть Инструменты КриптоПро CSP и перейти на вкладку «Контейнеры». Необходимый контейнер должен отображаться с соответствующим типом считывателя. В списке контейнеров необходимо выбрать интересующий и нажать «Установить сертификат».

LinuxCSPCrypto-16.png

Открытый ключ будет автоматически установлен в хранилище и доступен для просмотра на вкладке «Сертификаты».

LinuxCSPCrypto-15.png

Если кнопка «Установить сертификат» не активна, это означает, что в контейнере отсутствует открытый ключ. Для решения данной проблемы следует перейти к п.6.1 данной инструкции.

4.2 Перенос контейнера со съёмного носителя на жёсткий диск.

4.2.1 Для переноса закрытого ключа на жёсткий диск необходимо вставить съёмный носитель, затем открыть КриптоПро CSP и перейти на вкладку «Контейнеры», выбрать необходимый контейнер, затем нажать «Скопировать контейнер».

LinuxCSPCrypto-16.png

4.2.2 В появившемся окне необходимо выбрать «Директория» и нажать «ОК».

LinuxCSPCrypto-17.png

4.2.3 В появившемся окне необходимо ввести пароль от контейнера сертификата и нажать «ОК».

LinuxCSPCrypto-18.png

4.2.4 Затем необходимо задать новый пароль для копии контейнера или оставить его без пароля.

LinuxCSPCrypto-19.png

4.2.5 Контейнер успешно скопирован на жесткий диск.

LinuxCSPCrypto-20.png

4.2.6 Затем необходимо произвести установку сертификата. Для этого требуется выбрать скопированный контейнер со считывателем HDIMAGE и нажать «Установить сертификат». Открытый ключ будет автоматически установлен в хранилище и доступен для просмотра на вкладке «Сертификаты».

LinuxCSPCrypto-21.png

Если кнопка «Установить сертификат» не активна, это означает, что в контейнере отсутствует открытый ключ. Для решения данной проблемы следует перейти к п.6.1 данной инструкции.

4.3 Перенос контейнера из папки на жёсткий диск.

4.3.1 Для переноса контейнера из папки на жёсткий диск, пользователю необходимо выбрать папку с содержимым закрытого ключа (файлы расширением .key) и нажать «Копировать в…»

Читайте также:  Set time date linux command

LinuxCSPCrypto-23.png

4.3.2 В открывшемся окне необходимо перейти к каталогу Компьютер/var/opt/cprocsp/keys/ / и нажать «Выбрать»

LinuxCSPCrypto-24.png

4.3.3 После этого необходимый закрытый ключ отобразится в КриптоПро CSP на вкладке «Контейнеры».

LinuxCSPCrypto-25.png

4.3.4 Затем необходимо произвести установку сертификата. Для этого требуется выбрать скопированный контейнер со считывателем HDIMAGE и нажать «Установить сертификат». Открытый ключ будет автоматически установлен в хранилище и доступен для просмотра на вкладке «Сертификаты».

Если кнопка «Установить сертификат» не активна, это означает, что в контейнере отсутствует открытый ключ. Для решения данной проблемы следует перейти к п.6.1 данной инструкции.

5. Выполните настройку электронного документооборота согласно видеоинструкции.

6. Типичные ошибки и способы их устранения.

LinuxCSPCrypto-26.png

Вариант 1. (Установка через криптопровайдер).

LinuxCSPCrypto-27.png

Пользователю необходимо скопировать сертификат открытого ключа в папку «Загрузки».

Для установки открытой части ключа пользователю необходимо открыть КриптоПро CSP, перейти на вкладку «Сертификаты», а затем нажать «Установить сертификаты».

LinuxCSPCrypto-28.png

В открывшемся окне требуется выбрать необходимый сертификат (файл c расширением .cer) и нажать «Открыть».

LinuxCSPCrypto-29.png

Сертификат автоматически определит подходящий контейнер.

Вариант 2 (Установка через терминал).

Пользователю необходимо скопировать сертификат открытого ключа в папку «Загрузки».

LinuxCSPCrypto-27.png

Открыть терминал (Ctrl+Alt+T) и выполнить команду по установке сертификата (открытого ключа).

/opt/cprocsp/bin/amd64/certmgr -inst -f ~/Загрузки/ .cer -ask-container

В процессе установки будет предложено выбрать контейнер закрытого ключа, с которым будет ассоциирован сертификат (открытый ключ), например:

Пользователю потребуется выбрать контейнер

1) \\.\HDIMAGE\ООО «Тестовая организация №1»

LinuxCSPCrypto-30.png

Выберите контейнер, к которому относится сертификат. Например, введите 1 и нажмите «Enter».

Сертификат будет связан с контейнером и установлен в хранилище «Личное». ErrorCode: 0x00000000 свидетельствует об отсутствии ошибок.

LinuxCSPCrypto-31.png

LinuxCSPCrypto-32.png

6.2 Цепочка сертификатов обработана, но прервана на корневом который не является доверенным.

LinuxCSPCrypto-33.png

Вариант 1. (Установка через криптопровайдер).

Для установки доверенного корневого сертификата следует открыть КриптоПро CSP, перейти на вкладку «Сертификаты», затем в списке выбрать личный сертификат, при работе с которым выходит ошибка и нажать «Свойства сертификата».

LinuxCSPCrypto-34.png

В открывшемся окне необходимо скопировать ссылку URL сертификата УЦ и вставить её адресную строку браузера. Произойдёт загрузка доверенного корневого сертификата удостоверяющего центра.

LinuxCSPCrypto-35.png

В КриптоПРО CSP на вкладке «Сертификаты» необходимо нажать кнопку «Установить сертификат». В открывшемся окне следует перейти в папку «Загрузки», выбрать скаченный сертификат и нажать «Открыть».

LinuxCSPCrypto-36.png

В появившемся окне необходимо нажать «ОК».

LinuxCSPCrypto-37.png

Вариант 2 (Установка через терминал).

Пользователю требуется скачать необходимый доверенный сертификат способом указанным выше, а затем перейти терминал (Ctrl+Alt+T) и выполнить команду по установке доверенного корневого сертификата.

/opt/cprocsp/bin/amd64/certmgr -inst -store root -f ~/Загрузки// .crt

LinuxCSPCrypto-39.png

В появившемся окне необходимо нажать «ОК».

LinuxCSPCrypto-40.png

Сертификат будет установлен в хранилище «Доверенные корневые центры сертификации». ErrorCode: 0x00000000 свидетельствует об отсутствии ошибок.

LinuxCSPCrypto-41.png

LinuxCSPCrypto-38.png

Также вам может быть интересно:

Источник

Оцените статью
Adblock
detector