bac55cbdfd3ddb108e41376f52dd3876f211d620
Поскольку Интеграционный шлюз НРД (ИШ) официально работает только на Astra Linux SE 1.6/1.7 (RPM-версии нет, дистрибутив только .deb для Debian-based), мигрируем инфраструктуру с РЕД ОС на Astra. Это заодно проверит «чистую» установку с нуля. deploy/astra/install.sh — установщик bj-server для свежей Astra ВМ: - проверка ОС (Astra Linux SE) - apt-зависимости (curl, git, podman, podman-compose, postgresql-client) - скачивание Go 1.24+ с go.dev, если нет - системный пользователь bj + каталоги /opt/bj /var/lib/bj /var/log/bj - git clone репо в /opt/bj/src - go build бинарника /opt/bj/bj-server - podman-compose up -d postgres + накат всех миграций - systemd unit с безопасными ограничениями (NoNewPrivileges, ProtectSystem=strict, ReadWritePaths только нужные, PrivateTmp) - автозапуск + проверка systemctl is-active - финальная подсказка с URL'ами deploy/astra/install-validata.sh — установщик Валидата CSP: - ищет .deb пакеты в dist/validata/ или принимает путь аргументом - если пакетов нет — печатает текст письма для запроса дистрибутива у НРД (soed@nsd.ru) или МБ (pki@moex.com) - dpkg -i + apt-get install -f для зависимостей - проверка установки в /opt/Validata* deploy/astra/install-ish.sh — установщик ИШ: - ищет igate_*_amd64.deb в стандартных местах (dist/ish/, ~/Downloads и т.п.) - проверяет наличие Валидаты (предупреждает если нет) - dpkg -i igate_*.deb - подсказывает следующие шаги (запуск GUI, настройка БД и канала WSL) deploy/astra/migrate-from-redos.sh — экспорт со старой РЕД ОС ВМ: - pg_dump БД bj (через podman exec или напрямую) - копия ~/.bj/setup.json (ищется в нескольких стандартных путях) - последние 7 дней логов из /var/log/bj и journalctl - meta.txt с версиями ОС/пакетов - README.md с инструкциями восстановления на новой ВМ - итоговый тарбол /tmp/bj-migration-YYYY-MM-DD-HHMM.tar.gz deploy/astra/healthcheck.sh — проверка после установки: - 8 разделов: ОС, пользователь/каталоги, systemd, HTTP, PostgreSQL, Валидата, ИШ, сетевые порты - цветной вывод OK/WARN/FAIL для каждого пункта deploy/astra/README.md — пошаговая инструкция миграции из 8 этапов: - подготовка (Astra ВМ, доступ root, запрос Валидаты у НРД) - экспорт со старой ВМ - install.sh на новой ВМ - restore БД и настроек - healthcheck - install-validata.sh + импорт сертификатов УЦ МБ - install-ish.sh + настройка канала WSL - первый тест с роботом MOEX МОСТ - раздел «что НЕ переносится автоматически» - раздел «откат» (старая ВМ работает до подтверждения миграции) REPORT.md обновлён: - общая готовность 72% → 75% - готовность к роботу 85% → 88% - новая строка «Установщик/мигратор на Astra Linux: 100% ✅» - «Установка ИШ на наш стенд» поднялась с 0% до 30%
Bridge and Join's — сервис M2M-перевода ценных бумаг через НРД
Внутренний модуль брокера для обмена с НРД сообщениями о переводе ценных бумаг (M2M, ЭДО НРД, сервис MOEX MOST). Реализация — российское ПО, готовится к включению в Реестр (ПП РФ № 1236).
Назначение
Связующий модуль между:
- личным кабинетом клиента на платформе ESIA Finance (источник заявлений инвестора);
- учётной системой
Fansy(источник реквизитов и остатков, выгрузка в нашу принимающую БД делает отдельная команда); - НРД через Интеграционный шлюз / Web-сервис ONYX (формат XML по схемам
M2MTransferRequest/Decision/Response/Handbook/ParticipantForm).
Подробное описание архитектуры, потока, регуляторных требований, SLA и
дорожной карты — см. docs/architecture/overview.md и план в репозитории
команды.
Стек
- Go 1.23+ — ядро (
cmd/,internal/). - Java 21 (Liberica JDK) + КриптоПро JCP —
services/crypto-service(XMLDSig по ГОСТ Р 34.10-2012, серверная подпись действий оператора). - React + Vite —
web/admin-ui(журнал, ручное согласование, сертификаты). - PostgreSQL Pro Certified — основная БД (
m2m-core,fansy-store, аудит). - MinIO — эталоны подписанных XML.
- Развёртывание — одна ВМ внутри контура брокера,
podman-compose.
Документация
DOC/— оригинальная документация НРД (схемы XSD, инструкции, эталоны).docs/architecture/overview.md— обзор архитектуры.docs/fansy-contract/v1/— DDL и контракт данных для команды Fansy.docs/lk-contract/v1/— OpenAPI контракта с ЛК клиента (ESIA Finance).scripts/setup-dev-vm.sh— скрипт первичной подготовки dev-ВМ.
Быстрый старт (на dev-ВМ)
# под admin (один раз на ВМ)
sudo bash scripts/setup-dev-vm.sh
# под dev
git clone https://git.zetit.ru/zuevav/Bridge-and-Join-s.git
cd Bridge-and-Join-s
make build
make test
Ветви
main— стабильная.feature/<имя>— рабочие ветви, в основную через merge request.claude/<...>— служебные ветви автоматизированных правок.
Лицензия
Внутренняя разработка. Лицензионная модель будет определена при подаче в Реестр российского ПО.
Description
Languages
Go
63%
HTML
25.7%
Shell
9.1%
Java
1.9%
Makefile
0.2%
Other
0.1%