e4de1ab4d8
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
149 lines
12 KiB
HTML
149 lines
12 KiB
HTML
{{define "content"}}
|
||
<p style="margin-bottom:16px"><a href="/admin/help">← все инструкции</a></p>
|
||
|
||
<div class="card">
|
||
<h2>Архитектура: как устроен обмен с НРД</h2>
|
||
<p class="muted">Документ-источник: <code>DOC/ruk_install_ish_2025_11_10.pdf</code> (Руководство по установке ИШ от 10.11.2025), <code>DOC/instr-ish-rest-api.pdf</code> (REST API ИШ).</p>
|
||
</div>
|
||
|
||
<div class="card">
|
||
<h2>Схема обмена (полная)</h2>
|
||
<pre style="font-size:12px;line-height:1.4;background:var(--bg);padding:16px;border-radius:6px;overflow:auto">
|
||
┌─────────────────────────────────────────────────────────────────┐
|
||
│ НАША СТОРОНА │
|
||
│ │
|
||
│ Linux ВМ (РЕД ОС 8) Astra Linux ВМ │
|
||
│ ────────────────── ────────────────── │
|
||
│ ┌──────────────────┐ REST API ┌──────────────────┐ │
|
||
│ │ bj-server │ ────POST/GET──> │ ИШ (igate) │ │
|
||
│ │ (наше ПО) │ <───────────── │ (получаем у НРД)│ │
|
||
│ │ │ │ │ │
|
||
│ │ • стейт-машина │ │ Делает САМ: │ │
|
||
│ │ • PostgreSQL │ │ • подпись │ │
|
||
│ │ • админка :8080 │ │ • упаковку ЭДО │ │
|
||
│ │ {{if .DevMode}}• lk-emulator {{else}}• коннектор ЛК {{end}}│ │ • проверку │ │
|
||
│ │ │ │ подписей НРД │ │
|
||
│ └──────────────────┘ │ • БД 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 │
|
||
│ │
|
||
│ ↓ внутрь НРД │
|
||
{{if .DevMode}} │ • робот-автотест │
|
||
│ MC0012500000 │
|
||
{{end}} │ • реальные депозитарии │
|
||
│ • биржевые системы │
|
||
└────────────────────────────┘
|
||
</pre>
|
||
</div>
|
||
|
||
<div class="card">
|
||
<h2>Компоненты — кто на чьей стороне</h2>
|
||
<table>
|
||
<thead><tr><th>Компонент</th><th>Сторона</th><th>ОС</th><th>СКЗИ</th><th>Назначение</th></tr></thead>
|
||
<tbody>
|
||
<tr>
|
||
<td><strong>bj-server</strong></td>
|
||
<td>наша</td>
|
||
<td>Astra Linux SE 1.7 / Linux</td>
|
||
<td>АПК «Валидата Клиент L» (PKCS#11)</td>
|
||
<td>Стейт-машина, журнал в БД, веб-админка{{if .DevMode}}, lk-emulator{{end}}</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>ИШ (igate)</strong></td>
|
||
<td>наша <span class="muted">(но дистрибутив даёт НРД)</span></td>
|
||
<td>Astra Linux SE 1.6/1.7</td>
|
||
<td>АПК «Валидата Клиент L»</td>
|
||
<td>Подписывает наш XML сертификатом УЦ МБ, упаковывает в пакет ЭДО, отправляет в НРД</td>
|
||
</tr>
|
||
<tr>
|
||
<td><strong>ONYX (WSL)</strong></td>
|
||
<td>НРД</td>
|
||
<td>—</td>
|
||
<td>—</td>
|
||
<td>Web-сервис НРД — принимает пакеты от ИШ всех клиентов</td>
|
||
</tr>
|
||
{{if .DevMode}}<tr>
|
||
<td><strong>Робот-автотест</strong></td>
|
||
<td>НРД</td>
|
||
<td>—</td>
|
||
<td>—</td>
|
||
<td>Контрагент-эмулятор внутри НРД. Адресуется кодом <code>MC0012500000</code> в TEST3</td>
|
||
</tr>{{end}}
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
|
||
<div class="card">
|
||
<h2>Часто задаваемые вопросы</h2>
|
||
|
||
<h3>Q: ИШ — это сервер НРД, к которому мы подключаемся?</h3>
|
||
<p>Нет. <strong>ИШ — это наша программа, поставленная у нас.</strong> НРД даёт дистрибутив (<code>igate_100.0-765_amd64.deb</code>, 117 МБ), но ставим у себя. ИШ — это «персональный почтовый клиент к НРД» с подписью.</p>
|
||
|
||
<h3>Q: ИШ можно поставить на ту же ВМ, что и bj-server?</h3>
|
||
<p>Да, если ВМ — Astra Linux. И bj-server, и ИШ работают на Astra Linux SE 1.6/1.7 и используют одно и то же СКЗИ — АПК «Валидата Клиент L». Можно собрать всё на одной ВМ или разнести по отдельным.</p>
|
||
|
||
<h3>Q: Мы перекладываем файлы между bj-server и ИШ?</h3>
|
||
<p>Нет. Мы используем <strong>REST API</strong> ИШ (раздел 2.5 инструкции). bj-server делает HTTP-запросы: <code>POST /api/package/{channel}/file</code> с ZIP в теле. Никаких разделяемых папок. (Альтернативный режим «обменные папки» в ИШ есть — мы его не используем.)</p>
|
||
|
||
<h3>Q: Где брать Валидату?</h3>
|
||
<p>Дистрибутив для Astra Linux SE опубликован на сайте Московской Биржи: <a href="https://fs.moex.com/cdp/po/ClientL_ALSE.zip" target="_blank" rel="noopener">fs.moex.com/cdp/po/ClientL_ALSE.zip</a>. На Linux отдельной лицензии и регистрационных данных не требует — пакеты <code>zpki</code>/<code>zsdk</code> ставятся через <code>dpkg -i</code> и работают сразу.</p>
|
||
|
||
<h3>Q: Какой сертификат нужен?</h3>
|
||
<p>Только от <strong>УЦ Московской Биржи</strong> (<code>ca.moex.com</code>). Сертификаты других УЦ ИШ не примет. УЦ МБ выпускает сертификаты только для организаций, подключённых к ЭДО НРД (по договору).</p>
|
||
|
||
{{if .DevMode}}
|
||
<h3>Q: Что делать, чтобы протестировать на роботе НРД на TEST3?</h3>
|
||
<ol>
|
||
<li>Получить сертификат УЦ МБ для нашей организации.</li>
|
||
<li>Подать <a href="https://www.nsd.ru/workflow/zayavka-na-testirovanie/" target="_blank">заявку на тестирование</a> в НРД (инструкция в <code>DOC/instr_int_sh_01072025.pdf</code>).</li>
|
||
<li>Получить от НРД код депонента-тестера и доступ к TEST3.</li>
|
||
<li>Поднять Astra Linux ВМ, поставить ИШ + Валидату, импортировать сертификат.</li>
|
||
<li>В нашем <a href="/admin/setup">/admin/setup</a> → «Интеграционный шлюз НРД» указать URL ИШ (например <code>http://10.10.10.23:8080</code>) и имя канала из ИШ.</li>
|
||
<li>Отправить тестовую заявку с <code>ReceiverCode = MC0012500000</code> и <code>DocumentSeries = 2001</code> — робот ответит «Принять все бумаги».</li>
|
||
</ol>
|
||
|
||
<h3>Q: Сколько времени нужно от старта подключения до прогона на TEST3?</h3>
|
||
<p>Оптимистично — <strong>1-2 недели</strong> (если все ответы НРД быстрые и УЦ МБ не задерживает). Реалистично — <strong>3-4 недели</strong>. На нашей стороне всё уже готово; задержка только во внешних шагах.</p>
|
||
{{else}}
|
||
<h3>Q: Что нужно, чтобы начать обмен с НРД?</h3>
|
||
<ol>
|
||
<li>Получить сертификат УЦ МБ для организации.</li>
|
||
<li>Оформить в НРД подключение к ЭДО и сервису MOEX МОСТ (M2M), получить доступ к нужному контуру.</li>
|
||
<li>Поднять Astra Linux ВМ, поставить ИШ + Валидату, импортировать сертификат.</li>
|
||
<li>В <a href="/admin/setup">Настройке</a> → «НРД» указать профиль, URL ИШ и ключевой контейнер, затем проверить подключения на странице <a href="/admin/status">«Статус»</a>.</li>
|
||
</ol>
|
||
{{end}}
|
||
</div>
|
||
|
||
{{if .DevMode}}
|
||
<div class="card">
|
||
<h2>Что у нас уже готово</h2>
|
||
<ul>
|
||
<li><strong>REST-клиент ИШ</strong> в <code>internal/nsdadapter/igw/</code> — все 4 endpoint'а по спецификации, упаковщик/распаковщик ZIP, 10 тестов PASS</li>
|
||
<li><strong>Робот-эмулятор</strong> в <code>internal/nsdadapter/mock/</code> — позволяет проверить нашу логику до получения реального ИШ</li>
|
||
<li><strong>Конфигурация в админке</strong> — поля <code>igw_base_url</code> и <code>channel</code> в /admin/setup; авто-определение профилей GUEST/TEST3/PROD</li>
|
||
<li><strong>Подбор URL контуров</strong> — при выборе профиля URL ONYX заполняется автоматически</li>
|
||
<li><strong>Полная документация ИШ</strong> в <code>DOC/</code> и дистрибутив в <code>dist/ish/</code></li>
|
||
</ul>
|
||
</div>
|
||
{{end}}
|
||
{{end}}
|