{{define "content"}}

← все инструкции

Архитектура: как устроен обмен с НРД

Документ-источник: DOC/ruk_install_ish_2025_11_10.pdf (Руководство по установке ИШ от 10.11.2025), DOC/instr-ish-rest-api.pdf (REST API ИШ).

Схема обмена (полная)

┌─────────────────────────────────────────────────────────────────┐
│                       НАША СТОРОНА                              │
│                                                                 │
│   Linux ВМ (РЕД ОС 8)         Astra Linux ВМ                   │
│   ──────────────────          ──────────────────                │
│   ┌──────────────────┐    REST API   ┌──────────────────┐      │
│   │   bj-server      │ ────POST/GET──> │    ИШ (igate)    │     │
│   │   (наше ПО)      │ <───────────── │  (получаем у НРД)│     │
│   │                  │                 │                  │     │
│   │  • стейт-машина  │                 │ Делает САМ:      │     │
│   │  • PostgreSQL    │                 │  • подпись       │     │
│   │  • админка :8080 │                 │  • упаковку ЭДО  │     │
│   │  • lk-emulator   │                 │  • проверку      │     │
│   │                  │                 │    подписей НРД  │     │
│   └──────────────────┘                 │  • БД PostgreSQL │     │
│                                        │    (history)     │     │
│                                        └──────┬───────────┘     │
│                                               │                 │
│   АПК «Валидата Клиент L»                    │ АПК «Валидата   │
│   (PKCS#11) — общий для всех                 │   Клиент L»     │
│   компонентов                                │                 │
└──────────────────────────────────────────────┼─────────────────┘
                                               │
                              SOAP/REST/HTTPS  │ Web-сервис ONYX
                                               ▼
                                  ┌────────────────────────────┐
                                  │      СТОРОНА НРД           │
                                  │                            │
                                  │  GUEST: gost-gt.nsd.ru     │
                                  │  TEST3: gost.nsd.ru        │
                                  │  PROM:  edog.nsd.ru        │
                                  │                            │
                                  │  /onyxgs/WslService        │
                                  │  /onyxt3/WslService        │
                                  │  /onyxpr/WslService        │
                                  │                            │
                                  │  ↓ внутрь НРД              │
                                  │  • робот-автотест          │
                                  │    MC0012500000            │
                                  │  • реальные депозитарии    │
                                  │  • биржевые системы        │
                                  └────────────────────────────┘

Компоненты — кто на чьей стороне

КомпонентСторонаОССКЗИНазначение
bj-server наша Astra Linux SE 1.7 / Linux АПК «Валидата Клиент L» (PKCS#11) Стейт-машина, журнал в БД, веб-админка, lk-emulator
ИШ (igate) наша (но дистрибутив даёт НРД) Astra Linux SE 1.6/1.7 АПК «Валидата Клиент L» Подписывает наш XML сертификатом УЦ МБ, упаковывает в пакет ЭДО, отправляет в НРД
ONYX (WSL) НРД Web-сервис НРД — принимает пакеты от ИШ всех клиентов
Робот-автотест НРД Контрагент-эмулятор внутри НРД. Адресуется кодом MC0012500000 в TEST3

Часто задаваемые вопросы

Q: ИШ — это сервер НРД, к которому мы подключаемся?

Нет. ИШ — это наша программа, поставленная у нас. НРД даёт дистрибутив (igate_100.0-765_amd64.deb, 117 МБ), но ставим у себя. ИШ — это «персональный почтовый клиент к НРД» с подписью.

Q: ИШ можно поставить на ту же ВМ, что и bj-server?

Да, если ВМ — Astra Linux. И bj-server, и ИШ работают на Astra Linux SE 1.6/1.7 и используют одно и то же СКЗИ — АПК «Валидата Клиент L». Можно собрать всё на одной ВМ или разнести по отдельным.

Q: Мы перекладываем файлы между bj-server и ИШ?

Нет. Мы используем REST API ИШ (раздел 2.5 инструкции). bj-server делает HTTP-запросы: POST /api/package/{channel}/file с ZIP в теле. Никаких разделяемых папок. (Альтернативный режим «обменные папки» в ИШ есть — мы его не используем.)

Q: Где брать Валидату?

Дистрибутив для Astra Linux SE опубликован на сайте Московской Биржи: fs.moex.com/cdp/po/ClientL_ALSE.zip. На Linux отдельной лицензии и регистрационных данных не требует — пакеты zpki/zsdk ставятся через dpkg -i и работают сразу.

Q: Какой сертификат нужен?

Только от УЦ Московской Биржи (ca.moex.com). Сертификаты других УЦ ИШ не примет. УЦ МБ выпускает сертификаты только для организаций, подключённых к ЭДО НРД (по договору).

Q: Что делать, чтобы протестировать на роботе НРД на TEST3?

  1. Получить сертификат УЦ МБ для нашей организации.
  2. Подать заявку на тестирование в НРД (инструкция в DOC/instr_int_sh_01072025.pdf).
  3. Получить от НРД код депонента-тестера и доступ к TEST3.
  4. Поднять Astra Linux ВМ, поставить ИШ + Валидату, импортировать сертификат.
  5. В нашем /admin/setup → «Интеграционный шлюз НРД» указать URL ИШ (например http://10.10.10.23:8080) и имя канала из ИШ.
  6. Отправить тестовую заявку с ReceiverCode = MC0012500000 и DocumentSeries = 2001 — робот ответит «Принять все бумаги».

Q: Сколько времени нужно от старта подключения до прогона на TEST3?

Оптимистично — 1-2 недели (если все ответы НРД быстрые и УЦ МБ не задерживает). Реалистично — 3-4 недели. На нашей стороне всё уже готово; задержка только во внешних шагах.

Что у нас уже готово

{{end}}