Установка Мультибанка (Транзит 2.0) под Astra Linux
В данном разделе приведена инструкция по установке Мультибанка (Транзит 2.0) в ОС Astra Linux.
Системные требования
- ОС Astra Linux Special Edition (Исполнение 1.7)
- СУБД PostgreSQL 14+
- Интеграционный шлюз версии 107 и выше
- КриптоПро CSP 5.0 R3 (не ниже 5.0.12922 от 17.08.2023) при использовании серверного подписания
- При планированиие выпуска ключей для модуля Сбербанк через Мультибанк обязательно наличие приложения cryptcp
- СКЗИ «Валидата CSP»
Архитектурные особенности
- Терминал Транзита и Интеграционный шлюз устанавливаются на разных серверах
- Сервера могут быть физическими или виртуальными (не динамические ресурсы RAM)
- API Оркестратор может быть установлен на отдельном сервере
Первый сервер
Внимание! Для данного сервера обязательно наличие графического интерфейса.
1. Установка ПК “Валидата Клиент L” для Astra Linux Special Edition
СКЗИ Валидата требуется для работы с ГОСТ-криптографией при использовании Московской Биржи.
Установка пакета
Дистрибутив СКЗИ для Linux доступен по ссылке https://www.moex.com/s1292
Архив содержит два установочных deb-пакета. Необходимо установить пакет zpki (СКЗИ Валидата):
sudo dpkg -i zpki-*.deb
Настройка ПК “Валидата Клиент L”
После установки необходимо настроить считыватель ключей при помощи программы Программа конфигурации СКЗИ (Административная) и профиль в ПО Справочник сертификатов.
2. Установка СУБД PostgreSQL
Шаг 1. Подключение репозиториев и установка СУБД
Для подключения расширенного репозитория (repository-extended) с компонентом astra-ce и установки пакетов СУБД воспользуйтесь официальным руководством производителя: Справочный центр Astra Linux — Установка PostgreSQL.
Шаг 2. Создание пользователя и базы данных
По умолчанию после установки создается системный пользователь postgres. Переключимся под него, чтобы зайти в консоль СУБД и выполнить SQL-команды.
- Перейдите под пользователя postgres и запустите интерактивную консоль:
sudo su - postgres
psql
Приглашение командной строки изменится на postgres=#
- Создайте нового пользователя (замените
my_userна ваше имя пользователя, аmy_strong_passwordна надежный пароль в одинарных кавычках):
CREATE USER my_user WITH PASSWORD 'my_strong_password';
- Создайте новую базу данных и сразу назначьте созданного пользователя её владельцем (замените
my_databaseна нужное имя базы):
CREATE DATABASE my_database OWNER my_user ENCODING 'UTF8' LC_COLLATE 'ru_RU.UTF-8' LC_CTYPE 'ru_RU.UTF-8';
- Выйдите из консоли СУБД:
\q
- Вернитесь из сессии пользователя postgres обратно к своей учетной записи:
exit
Шаг 3. Настройка удаленного доступа
Чтобы PostgreSQL принимал подключения не только локально, но и с любых внешних IP-адресов, необходимо отредактировать два конфигурационных файла под учетной записью суперпользователя (root).
1. Разрешаем прослушивание сетевых интерфейсов (postgresql.conf)
Откройте основной конфигурационный файл:
sudo nano /etc/postgresql/14/main/postgresql.conf
Найдите строку #listen_addresses = 'localhost' (примерно 60-я строка), раскомментируйте её (уберите символ #) и замените localhost на *:
listen_addresses = '*'
Сохраните изменения (Ctrl + O, Enter) и закройте редактор (Ctrl + X).
2. Разрешаем аутентификацию для нового пользователя (pg_hba.conf)
Откройте файл конфигурации клиентской аутентификации:
sudo nano /etc/postgresql/14/main/pg_hba.conf
Спуститесь в самый низ файла и добавьте строчку, которая разрешит созданному пользователю подключаться к конкретной базе данных со всех сетевых адресов:
# TYPE DATABASE USER ADDRESS METHOD
host my_database my_user 0.0.0.0/0 scram-sha-256
Где:
my_database— имя вашей базы данныхmy_user— имя созданного пользователя, которому разрешен доступ0.0.0.0/0— маска сети, означающая «любые IPv4-адреса»scram-sha-256— метод шифрования паролей (в PostgreSQL 14 используется по умолчанию)
Сохраните файл и закройте редактор.
Шаг 4. Перезапуск службы и проверка портов
- Чтобы применить внесенные изменения, перезапустите службу СУБД:
sudo systemctl restart postgresql
- Убедитесь, что служба работает без ошибок:
sudo systemctl status postgresql
- Проверьте, что PostgreSQL начал слушать порт 5432 на всех сетевых интерфейсах (в выводе команды должна присутствовать строка
0.0.0.0:5432или*:5432):
ss -tlnp | grep 5432
Шаг 5. Настройка сетевого экрана
Если на сервере используется брандмауэр, то необходимо настроить его для возможности удаленного доступа к БД.
3. Установка ПО Интеграционный шлюз
Рекомендация по установке Seahorse
Интеграционный шлюз использует GNOME Keyring для сохранения паролей, используемых при работе. Для управления паролями рекомендуется установить графическую утилиту Seahorse:
sudo apt install seahorse
После установки:
- Запустить Seahorse из меню приложений («Пароли и ключи»)
- Снять пароль со связки ключей по умолчанию (правой кнопкой на «Вход» → «Изменить пароль» → оставить новый пароль пустым)
Установка
sudo dpkg -i igate_*.deb
В процессе установки выбрать Да для регистрации и запуска как сервиса.
Каталог установки
/opt/nsd/igate/igate— основная папка ИШ/opt/nsd/igate/igate-svc— сервис ИШ/opt/nsd/igate/igate-cli— консольная версия ИШ
Настройка службы для доступа к пользовательской сессии (для получения/изменения сохраненных паролей)
Файл /etc/systemd/system/igate.service:
[Unit]
Description=Интеграционный шлюз
After=network.target systemd-user-sessions.service
Wants=systemd-user-sessions.service
[Service]
ExecStart=/usr/bin/dbus-run-session -- /bin/bash -c 'eval $(gnome-keyring-daemon --start --components=secrets) && exec /usr/local/bin/igate-svc'
[Install]
WantedBy=multi-user.target
После изменения конфига:
sudo systemctl daemon-reload
Проверка установки
systemctl status igate
sudo systemctl start igate
journalctl -fu igate.service
Логи Интеграционного шлюза
/home/пользователь/.local/share/NSD Integration Gateway/logs
/home/пользователь/.local/share/NSD Integration Gateway/logs-svc
/home/пользователь/.local/share/NSD Integration Gateway/logs-cli
Второй сервер
Требования к лицензированию
При использовании серверного подписания либо планировании работы с модулем банка ВТБ необходимо:
- Установить на сервере КриптоПро CSP
- Приобрести «Лицензии на право использования ПО “КриптоПро .NET” версии 2.0 на одном сервере»
Приобретение дополнительной лицензии связано с использованием библиотеки LibCore — программного продукта, позволяющего использовать СКЗИ КриптоПро CSP при написании приложений для dotnet 6+.
1. Установка СУБД PostgreSQL
Выполняется аналогично шагу 2 для Первого сервера (см. выше).
2. Установка ПО Мультибанк
Пользователь и группа
Пользователь: nsdt — системный (useradd -r -s /bin/false), либо другой, выбранный при установке.
Группа: nsdt.
Как задаётся пользователь при установке (debconf-шаблон nsdt/user):
- Интерактивно — выбор из двух вариантов:
<Текущий пользователь>(по умолчанию, берётсяlogname) илиnsdt. - Неинтерактивно — через preseed до установки:
debconf-set-selections <<< "nsdt nsdt/user select <Текущий пользователь>". Если указать имя без<...>, оно используется напрямую.
Папки ПО
| Путь | Владелец | Права |
|---|---|---|
/opt/nsd |
root:root | 0755 |
/etc/nsdt |
0700 | |
/var/log/nsdt |
0700 | |
/etc/aspnet/DataProtection-Keys |
root:root | 0755 |
/etc/aspnet/DataProtection-Keys/nsdt |
0700 | |
/opt/nsd/nsdt |
root:root | — |
/opt/nsd/nsdt/ClientConfig |
0700 |
Установка
sudo dpkg -i nsdt_*.deb
|
|---|
| Выполнение команды установки |
Проверка запуска
systemctl status nsdt
|
|---|
Выполнение команды systemctl status nsdt |
Первоначальная настройка
-
Открыть браузер на сервере
-
Перейти по адресу
http://localhost:8000 -
Выполнить настройку на вкладках:
-
Сервер
Настройки на вкладке Сервера -
БД
Настройки на вкладке БД -
Транзит
Настройки на вкладке Транзит -
Завершение
Для завершения настройки необходимо перейти на данную вкладку и нажать на кнопку
Завершить.
Вкладка Завершение
-
Вход в систему
После настройки откроется окно логина в Мультибанк (Транзит 2.0).
|
|---|
| Окно логина в Мультибанк (Транзит 2.0) |
После входа отобразится вкладка “Журнал”. Далее можно приступить к настройке Терминала. Настройка и работа ничем не отличается от текущей версии Мультибанка (Транзит 2.0).
|
|---|
| Вкладка Журнал |
3. Установка СКЗИ КриптоПро CSP (опционально)
Условия установки
- Обязательно при использовании серверного подписания документов
- Обязательно при использовании гост-криптографии для соединения с API банка
- Версия: КриптоПро CSP 5.0 R3 (не ниже 5.0.12922 от 17.08.2023)
Скачивание
- Зарегистрироваться на сайте www.cryptopro.ru
- Загрузить архив КриптоПро CSP x.x для Linux (x64, deb) или КриптоПро CSP x.x для Astra Linux, ЗПС (x64)
Установка
tar -zxf linux-amd64_deb.tgz
cd linux-amd64_deb
sudo ./install_GUI.sh
Или установка без графического интерфейса:
sudo ./install.sh
Проверка установки
/opt/cprocsp/bin/amd64/cptools
/opt/cprocsp/bin/amd64/cpconfig -version
Установка плагина для браузера (при клиентском подписании)
При подписании документов банковскими ключами на рабочих местах пользователей установить:
- КриптоПро ЭЦП Browser Plug-in: https://cryptopro.ru/products/cades/plugin
- Или плагин nsdtChromeExtension для работы с персональными токенами
4. Установка API Оркестратор
Примечание: Может быть установлен на отдельном сервере. При использовании гост-криптографии для соединения с API банка требуется установка КриптоПро CSP.
Пользователи и группа
Пользователи: по одному системному на каждый сервис — nsdt-gateway, nsdt-sberbank, nsdt-raiffeisenbank, nsdt-tbank, nsdt-nrbank, nsdt-psbbank, nsdt-vtbmsb (все /bin/false).
Группа: nsdt (общая).
Папки ПО
Для каждого сервиса <svc>:
| Путь | Владелец | Права |
|---|---|---|
/opt/nsd |
root:root | 0755 |
/etc/aspnet/DataProtection-Keys |
root:nsdt | 0755 |
/etc/nsdt-<svc> |
nsdt- |
0700 |
/var/log/nsdt-<svc> |
nsdt- |
0700 |
/etc/aspnet/DataProtection-Keys/nsdt-<svc> |
nsdt- |
0700 |
/opt/nsd/nsdt-<svc> |
root:root | — |
Системные требования
- ОС Astra Linux Special Edition (Исполнение 1.7)
- СУБД PostgreSQL (14+)
Установка
sudo dpkg -i nsdt-orchestrator_*.deb
Проверка службы
systemctl status nsdt-gateway
sudo systemctl start nsdt-gateway
journalctl -fu nsdt-gateway.service
Логи API Оркестратора
/var/log/nsdt-gateway
/var/log/nsdt-sberbank
/var/log/nsdt-raiffeisenbank
/var/log/nsdt-nrbank
/var/log/nsdt-tbank
/var/log/nsdt-psbbank
/var/log/nsdt-vtbmsb
Полезные команды
Системная информация
whoami # Текущий пользователь
pwd # Текущая директория
lsb_release -a # Версия системы
cat /etc/astra_version # Версия Astra Linux
dpkg-query -l # Список установленных пакетов
Управление службами
# Интеграционный шлюз
systemctl status igate
sudo systemctl stop igate
sudo systemctl start igate
# PostgreSQL
systemctl status postgresql
sudo systemctl stop postgresql
sudo systemctl start postgresql
# Терминал Транзита
systemctl status nsdt
sudo systemctl stop nsdt
sudo systemctl start nsdt
# API Оркестратор
systemctl status nsdt-gateway
sudo systemctl stop nsdt-gateway
sudo systemctl start nsdt-gateway
Диагностика
ss -tlnp | grep 5432 # Проверка портов
journalctl -u nsdt.service -n 100 -e # Просмотр логов службы
journalctl -fu nsdt.service # Просмотр логов в реальном времени