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

7.1. Состав и содержание дистрибтутивного пакета

Состав дистрибутива Сервиса подписания и верификации сообщений:

  • /distr/notarius/notarius_server_http – исполняемый файл сервиса подписания и верификации сообщений;

  • csp-5.0.12000.tar.gz – дистрибутив КриптоПро CSP 5.0 R2;

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

7.2. Порядок загрузки данных и программ

Администратор УВ осуществляет развёртывание, запуск и настройку Сервиса подписания и верификации сообщений с помощью данного руководства.

7.3. Предварительные операции (установка «пре-реквизитов»)

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

  1. Создать пользователя {{user}} и группу {{user_group}}, под которым будет работать сервис подписания и верификации сообщений.

  2. Установить КриптоПро CSP 5.0 R2:

Для Astra Linux

tar xzvf csp-5.0.12000.tar.gz
rm -f csp-5.0.12000.tar.gz
cd csp-5.0.12000 && dpkg -i install lsb-cprocsp-base*.deb lsb-cprocsp-rdr-64-*.deb lsb-cprocsp-kc1-64-*.deb lsb-cprocsp-capilite-64-*.deb lsb-cprocsp-devel-*.deb lsb-cprocsp-kc2-64-*.deb cprocsp-curl-64-*.deb
./install.sh

Для РЕД ОС

tar xzvf csp-5.0.12000.tar.gz
rm -f csp-5.0.12000.tar.gz
cd csp-5.0.12000 && yum -y localinstall lsb-cprocsp-base*.rpm lsb-cprocsp-rdr-64-*.rpm lsb-cprocsp-kc1-64-*.rpm lsb-cprocsp-capilite-64-*.rpm lsb-cprocsp-devel-*.rpm lsb-cprocsp-kc2-64-*.rpm cprocsp-curl-64-*.rpm
./install.sh

При наличии лицензионного кода КриптоПро CSP 5.0 R2 выполнить пользователем root команду:

/opt/cprocsp/sbin/amd64/cpconfig -license -set {{cprocsp_license}}

В случае отсутствия лицензионного кода, КриптоПро CSP 5.0 R2 будет работать в режиме trial лицензии.

Внимание

Срок действия trial лицензии – 90 дней с момента установки CryptoPro CSP. Для сохранения работоспособности Агента ПОДД по окончании данного периода, вам необходимо преобрести лицензию на CryptoPro CSP и внести её в систему указанным выше способом.

  1. Установить контейнер ключа КриптоПро в директорию /var/opt/cprocsp/keys/{{user}}/ Пользователь {{user}} должен быть владельцем данной директории и файлов в ней. Контейнер ключа необходимо поместить в указанную директорию в распакованном виде, сохраняя структуру директорий. Итоговая структура должна выглядеть следующим образом

/var/opt/cprocsp/keys/{{user}}/
└── имя_ключа.000
    ├── header.key
    ├── masks2.key
    ├── masks.key
    ├── name.key
    ├── primary2.key
    └── primary.key
  1. Выложить в каталог /distr/notarius конфигурационный файл appConfig.json, подготовленный согласно Общие настройки сервиса подписания и верификации сообщений.

7.4. Запуск Сервиса подписания и верификации сообщений

Убедитесь, что пользователь {{user}} имеет доступ к директории, в которой установлен Сервис подписания и верификации сообщений (/distr/notarius). Установите для файла /distr/notarius/notarius_server_http признак «исполняемый»:

chmod +x /distr/notarius/notarius_server_http

Пример раздела конфигурации скрипта для запуска сервиса подписания и верификации сообщений с использованием сервиса systemd. Данный файл, с названием notarius.service, необходимо сохранить в каталог /etc/systemd/system/

[Unit]
Description="Service for notarius"
After=syslog.target

[Service]
Type=simple

WorkingDirectory=/distr/notarius

# Важно! Запуск должен производиться от имени того пользователя, для которого ранее были выложены ключи КриптоПро!
User={{user}}
Group={{user_group}}

Environment="RUST_BACKTRACE=1"
Environment="RUST_TEST_NOCAPTURE=1"
Environment="RUST_LOG=INFO"

ExecStart=/distr/notarius/notarius_server_http appConfig.json
ExecStop=kill -TERM $MAINPID
[Install]
WantedBy=multi-user.target

Далее от имени пользователя root выполнить команду по включению, запуску сервиса и проверке его статуса:

systemctl daemon-reload
systemctl enable notarius
systemctl start notarius
systemctl -l status notarius

7.5. Дополнительные требования по работе сервиса Notarius

  1. Должны использоваться только сертификаты, полученные в УЦ, сертифицированных ФСБ

  2. Завершение работы notarius должно производиться с помощью сигналов SIGINT или SIGTERM (поддерживается systemd). В целях безопасности не рекомендуется использовать для остановки сервиса команду kill -9 (kill -KILL)

  3. В среде функционирования программы должны отсутствовать инструменты дампа памяти работающей программы.

  4. Сервис notarius запускается под отдельным системным пользователем, который имеет права для записи в журнал. Другой отдельный системный пользователь может иметь права на запись в журнал для перемещения содержимого журнала на архивные носители. Остальные системные пользователи могут иметь права лишь на чтение из журнала.

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

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

  7. Эксплуатация ПО notarius должна удовлетворять остальным требованиям приказа ФСБ РФ от 27 декабря 2011 г. N 796. В частности: работа в контролируемой зоне, соблюдение правил доступа к ПО и к журналам работы ПО.

  8. Работа с ключами и ключевыми контейнерами должна осуществляться в соответствии с ЖТЯИ.00102-02 95 01 Правилами пользования КриптоПро CSP 5.0 R2.