Установка

ESIA-Adapter : 3. Установка


Порядок

  1. Подготовить ОС Astra Linux SE и включить замкнутую программную среду.
  2. Установить КриптоПро CSP 5.0 R3 КС3.
  3. Проверить целостность дистрибутива.
  4. Распаковать адаптер, настроить параметры, зарегистрировать службу.
  5. Проверить genguids и готовность сервиса.

1. Замкнутая программная среда (ЗПС)

В /etc/digsig/digsig_initramfs.conf:

DIGSIG_ELF_MODE=1
DIGSIG_XATTR_MODE=1
mkdir -p /etc/digsig/xattr_keys/
cp public_key.gpg /etc/digsig/xattr_keys/
sudo update-initramfs -u -k all

Перезагрузить ОС. Файл public_key.gpg входит в комплект поставки; исполняемые файлы адаптера подписаны в расширенных атрибутах.

2. КриптоПро CSP

Перед установкой проверить целостность дистрибутива утилитой cpverify, полученной доверенным способом. Устанавливается минимальный вариант с настройками по умолчанию. Нужные пакеты: lsb-cprocsp-base, -rdr, -kc2, -capilite, -ca-certs, -pkcs11, cprocsp-cptools-gtk, cprocsp-curl, cprocsp-pki-cades, cprocsp-rdr-gui-gtk, cprocsp-pki-plugin.

3. Распаковка

tar --xattrs -xvf /каталог_с_архивом/<архив> -C /opt

Ключ --xattrs обязателен: подписи для ЗПС хранятся в расширенных атрибутах файлов.

4. Служба systemd

Переменные EXTIDP и CLIENTS обязательны: они задают пути к extidp.json и clients.json (Конфигурация). Для развёртывания на двух узлах за балансировщиком дополнительно задаётся NODE_ID (Резервирование и балансировка).

/etc/systemd/system/esia-idp.service:

[Unit]
Description=Avanpost ESIA IdP Adapter
After=network.target

[Service]
WorkingDirectory=/opt/esia-idp
ExecStart=/opt/esia-idp/esia-idp
Restart=always
RestartSec=10
SyslogIdentifier=esia-idp
User=esia-idp
Environment="DEBUG=false"
Environment="BASE_URL=https://esia-adapter.corp:4010"
Environment="EXTIDP=/opt/esia-idp/config/extidp.json"
Environment="CLIENTS=/opt/esia-idp/config/clients.json"
Environment="KEY=/opt/esia-idp/config/key.pem"
Environment="CPROCSP_BIN_DIR=/opt/cprocsp/bin/amd64"

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable esia-idp
sudo systemctl start esia-idp

5. Проверка

ldd ./genguids
./genguids 1

Ожидается UUID и код возврата 0 (1 — ошибка аргумента, 2 — ошибка инициализации КриптоПро, 3 — ошибка генерации случайных чисел). Затем проверить /health/ready (см. Эксплуатация) и пройти аутентификацию в тестовом OIDC-приложении через ЕСИА.

Обсуждение