Подробный гайд по настройке связки 1С:Предприятие, КриптоПро CSP и ALT Linux

Подробный гайд по настройке связки 1С:Предприятие, КриптоПро CSP и ALT Linux: пошаговая установка, работа с сертификатами, токенами и решение ошибок.

2026.11.02                  


Подробный гайд по настройке связки 1С:Предприятие, КриптоПро CSP и ALT LinuxПодробный гайд по настройке связки 1С:Предприятие, КриптоПро CSP и ALT Linux

1. Требования и подготовка

Версии ПО:

  • ALT Linux 10/11 (рекомендуется Server или Workstation)
  • КриптоПро CSP 5.0 R2 или новее
  • 1С:Предприятие 8.3.x (сервер или клиент)

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

  • Права root
  • Подключение к интернету
  • Установленный менеджер пакетов apt

Обновите систему:

su -
apt-get update
apt-get dist-upgrade

Установите зависимости:

apt-get install rpm-build alien p7zip-full curl wget

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



2.1. Загрузка пакетов

Скачайте дистрибутив с официального сайта КриптоПро - https://www.cryptopro.ru/products/csp (требуется регистрация).

Выберите версию для Linux x64 (RPM-пакеты).


2.2. Установка пакетов

cd /path/to/cryptopro
# Установите базовые пакеты
rpm -ivh lsb-cprocrypto-*.rpm
rpm -ivh cprocsp-*.rpm
rpm -ivh cprocsp-rdr-*.rpm
rpm -ivh cprocsp-curl-*.rpm

Для работы с токенами (Рутокен, eToken):

rpm -ivh cprocsp-rdr-pcsc-*.rpm
rpm -ivh cprocsp-rdr-gui-*.rpm
rpm -ivh pcsc-lite-ccid-*.rpm

2.3. Проверка установки

/opt/cprocsp/sbin/amd64/csptest -keyset -enum_cont -unique -fqcn -type hd

Если команда выполнена без ошибок — КриптоПро установлен корректно.


3. Установка и настройка сертификатов

3.1. Запуск GUI-утилиты (опционально)

/opt/cprocsp/sbin/amd64/cptools

3.2. Установка сертификата через CLI

Вариант А: Из файла (.cer, .pfx):

# Установка сертификата
/opt/cprocsp/bin/amd64/certmgr -inst -store uMy -file /path/to/cert.cer

# Установка контейнера (если есть .pfx с ключом)
/opt/cprocsp/bin/amd64/csptest -keyset -install -container "ИмяКонтейнера" -file /path/to/cert.pfx

Вариант Б: С токена (Рутокен):

# Просмотр контейнеров на токене
/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -unique -fqcn

# Установка сертификата с токена в хранилище
/opt/cprocsp/bin/amd64/certmgr -inst -store uMy -cont '\\.\HDIMAGE\ИмяКонтейнера.000\A000'

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

/opt/cprocsp/bin/amd64/certmgr -list

4. Установка 1С:Предприятие

4.1. Загрузка RPM-пакетов

Скачайте с портала 1С - https://users.v8.1c.ru/ (нужна подписка ИТС):

  • 1c-enterprise83-server-*.rpm (сервер)
  • 1c-enterprise83-client-*.rpm (клиент, опционально)
  • 1c-enterprise83-thinclient-*.rpm (тонкий клиент)

4.2. Установка сервера

# Установка зависимостей
apt-get install unixodbc libwebkitgtk-1.0-0 libX11-xcb1 libxslt1

# Установка сервера
rpm -ivh 1c-enterprise83-server-*.rpm
rpm -ivh 1c-enterprise83-ws-*.rpm  # веб-сервер, если нужен

4.3. Создание пользователя для 1С

useradd -m -s /bin/bash usr1cv8
passwd usr1cv8

4.4. Запуск служб

systemctl start srv1cv83
systemctl enable srv1cv83

4.5. Проверка статуса

systemctl status srv1cv83

5. Настройка взаимодействия 1С и КриптоПро

5.1. Конфигурация КриптоПро для 1С

Создайте/отредактируйте файл /etc/opt/cprocsp/config64.ini:

[KeyCarriers]
KC_1=KC_HDIMAGE
KC_2=KC_REGFLASH
KC_3=KC_FLOPPY

[KeyCarriers\KC_HDIMAGE]
Name=HDImage Carrier
DLL=/opt/cprocsp/lib/amd64/libhdimage.so.64

5.2. Настройка прав доступа

Добавьте пользователя 1С в нужные группы:

usermod -aG crypto usr1cv8
# Если используете токены:
usermod -aG pcscd usr1cv8

5.3. Копирование контейнеров для службы 1С

Служба 1С запускается от usr1cv8, поэтому контейнеры должны быть доступны этому пользователю:

# Скопируйте контейнеры из профиля root
cp -r /root/.cache/cprocsp/* /home/usr1cv8/.cache/cprocsp/
chown -R usr1cv8:usr1cv8 /home/usr1cv8/.cache/cprocsp/

# Или перенесите хранилище сертификатов
cp -r /root/.config/cprocsp/* /home/usr1cv8/.config/cprocsp/
chown -R usr1cv8:usr1cv8 /home/usr1cv8/.config/cprocsp/

Важно:

Если вы используете сервис 1С через systemd, контейнеры должны быть в профиле пользователя usr1cv8, а не root.


5.4. Настройка криптопровайдера в 1С

В консоли администрирования 1С:

  1. Откройте параметры информационной базы
  2. Перейдите в раздел "Дополнительные параметры"
  3. Укажите:
    • Имя провайдера: Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider
    • Имя контейнера: имя контейнера с сертификатом (из вывода csptest)



6. Настройка токенов (если используются)

6.1. Запуск PCSC-сервиса

systemctl start pcscd
systemctl enable pcscd

6.2. Настройка прав на USB-устройства

Создайте правило udev /etc/udev/rules.d/99-ruToken.rules:

SUBSYSTEM=="usb", ATTRS{idVendor}=="0a89", MODE="0666"

Перезагрузите udev:

udevadm control --reload-rules

7. Проверка работоспособности

7.1. Тест через 1С

В 1С откройте консоль кода:

ПроверитьПодпись = Новый Подпись;
Сертификат = Новый Сертификат;
Сертификат.ЗагрузитьИзФайла("/path/to/cert.cer");
Данные = "Тестовая строка";
ПодписанныеДанные = Подписать(Данные, Сертификат);
Сообщить("Подпись создана: " + ПодписанныеДанные);

7.2. Логирование ошибок

Включите журнал КриптоПро:

export CPROCSP_TRACE_LEVEL=5
export CPROCSP_TRACE_FILE=/var/log/cprocsp_trace.log

8. Типовые проблемы и решения

Проблема: "Контейнер не найден"

Решение:

Контейнеры в профиле root, а служба 1С работает от usr1cv8.

/opt/cprocsp/bin/amd64/csptest -keyset -copy_cont -cont_src "\\.\HDIMAGE\Name.000" -cont_dest "\\.\HDIMAGE\Name_usr1cv8.000"

Проблема: "Не удалось создать подпись"

Решение:

Проверьте, что КриптоПро видит контейнер от имени usr1cv8:

su - usr1cv8
/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont

Проблема: Ошибки лицензирования

Проверьте наличие лицензий:

/opt/cprocsp/sbin/amd64/cpconfig -license -view

Проблема: Токен не определяется

# Проверка USB-устройств
lsusb
# Проверка pcscd
systemctl status pcscd
journalctl -u pcscd

9. Автоматизация и скрипты

Скрипт резервного копирования контейнеров

#!/bin/bash
# backup_csp.sh
BACKUP_DIR="/backup/csp"
mkdir -p "$BACKUP_DIR"
tar -czf "$BACKUP_DIR/csp_$(date +%Y%m%d).tar.gz" /home/usr1cv8/.cache/cprocsp/

Мониторинг через Zabbix

Создайте скрипт проверки доступности контейнеров:

#!/bin/bash
# check_csp.sh
CONTAINERS=$(/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont 2>/dev/null | grep -c "FQCN")
echo $CONTAINERS

10. Обновление и обслуживание

Обновление КриптоПро

rpm -Uvh lsb-cprocrypto-*.rpm
rpm -Uvh cprocsp-*.rpm

Обновление 1С

systemctl stop srv1cv83
rpm -Uvh 1c-enterprise83-server-*.rpm
systemctl start srv1cv83

Информация предоставлена в ознакомительных целях. Применение описанных настроек в системах, должно осуществляться только после согласования с ответственными за информационную безопасность и в соответствии с требованиями ФСТЭК, ФСБ и иных уполномоченных органов.


Статью подготовил: Аверко Денис Сергеевич @Nymexis г. Омск (специалист по ЗИ)

Комментарии

Загрузка...
Если комментарии не загружаются, можете попробовать отключить блокировщик рекламы для этого сайта