9.3. Подключение к внешней СУБД
Для подключения компонента (eCA-CA, eCA-RA или eCA-VA) к внешней СУБД необходимо:
-
выполнить настройку на хосте СУБД в соответствии с подразделом Настройка на хосте СУБД;
-
выполнить настройку на хосте компонента в соответствии с подразделом Настройка на хосте компонента.
Процедура одинакова для всех компонентов. Компонент-зависимые значения приведены в таблице: в тексте используется плейсхолдер <COMP> (каталог компонента), который следует заменить значением из таблицы.
| Компонент | Плейсхолдер <COMP> | Служебные каталоги |
|---|---|---|
| eCA-CA | aecaCa | /opt/aecaCa/ |
| eCA-RA | aecaRa | /opt/aecaRa/ |
| eCA-VA | aecaVa | /opt/aecaVa/ |
Настройка на хосте СУБД
Заголовок раздела «Настройка на хосте СУБД»Настройка на хосте СУБД не зависит от компонента и выполняется одинаково.
На внешнем хосте с установленной СУБД в зависимости от используемой на нём ОС необходимо выполнить следующие настройки:
-
Если в качестве ОС на хосте СУБД используется Astra Linux Special Edition 1.7, необходимо разрешить подключение по протоколу TCP для порта СУБД, выполнив в терминале на данном хосте следующую команду с правами суперпользователя:
iptables -A INPUT -p tcp --destination-port port -j ACCEPTгде
port- порт для подключения к СУБД (по умолчанию в поддерживаемых СУБД используется порт 5432). Данная команда разрешит подключение к СУБД с любого IP-адреса. -
Если необходимо ограничить доступ к порту СУБД, предоставив его только для определённого IP-адреса, используйте команду с правами суперпользователя:
iptables -A INPUT -s IP -p tcp --destination-port port -j ACCEPTгде
IP- IP-адрес, доступ с которого необходимо разрешить;port- порт для подключения к СУБД (по умолчанию 5432). -
Если в качестве ОС на хосте с СУБД используется РЕД ОС, РОСА “ХРОМ” 12 Сервер, SberLinux OS Server или ОС Альт 8 СП, необходимо отредактировать файл
/var/lib/pgsql/15/data/pg_hba.conf(или/var/lib/jatoba/[версия]/data/pg_hba.conf, если используется СУБД Jatoba)1, приведя его к следующему виду:# TYPE DATABASE USER ADDRESS METHOD# "local" is for Unix domain socket connections onlylocal all all peer# IPv4 local connections:host all all 0.0.0.0/0 password# IPv6 local connections:host all all ::1/128 password# Allow replication connections from localhost, by a user with the# replication privilege.local replication all peerhost replication all 127.0.0.1/32 identhost replication all ::1/128 ident
Кроме того, необходимо отредактировать файл /var/lib/pgsql/15/data/postgresql.conf (или /var/lib/jatoba/[версия]/data/postgresql.conf, если используется СУБД Jatoba)2, указав для параметра listen_addresses значение *:
listen_addresses = '*'
Значение * позволит подключаться к СУБД с любого IP-адреса. В случае, если необходимо ограничить доступ к СУБД, предоставив его только для определённого IP-адреса, укажите данный IP-адрес в параметре listen_addresses, например:
listen_addresses = '192.168.111.100'
Затем на хосте СУБД необходимо перезапустить используемую СУБД, выполнив с правами суперпользователя команду systemctl restart postgresql (или systemctl restart jatoba-[версия], если используется СУБД Jatoba).
Затем на хосте СУБД необходимо создать и настроить базу данных. В результате должна быть создана база данных с выбранными параметрами (имя пользователя, пароль, имя базы данных).
Настройка на хосте компонента
Заголовок раздела «Настройка на хосте компонента»На хосте компонента необходимо отредактировать конфигурационный файл /opt/<COMP>/scripts/config.sh, указав в нём значения следующих параметров:
| Параметр | Значение по умолчанию | Описание |
|---|---|---|
use_tls | false | Флаг обязательного использования TLS для подключения к СУБД3. Допустимые значения: true, false. |
database_username | 'aeca' | Имя пользователя базы данных, используемое для работы компонента. Необходимо внести значение, указанное при создании и настройке базы данных на хосте СУБД. |
database_password | #CHANGEIT | Пароль пользователя базы данных. Необходимо внести значение, указанное при создании и настройке базы данных на хосте СУБД. |
database_host | 'localhost' | Сетевой адрес хоста СУБД. |
database_port | '5432' | Порт, используемый для подключения к базе данных. |
database_name | aecaca / aecara / aecava (по компоненту) | Имя базы данных, используемой компонентом. Необходимо внести значение, указанное при создании и настройке базы данных на хосте СУБД. |
root_cert_path | #CHANGEIT | Абсолютный путь к сертификату корневого Центра сертификации из цепочки сертификатов сервера СУБД4. |
Затем на хосте компонента примените изменения конфигурационного файла:
-
Запустите скрипт
install.shс правами суперпользователя. Пример запуска скрипта без параметров:Окно терминала sudo bash /opt/<COMP>/scripts/install.sh -
Выберите действие “[Update]”.
В случае, если компонент не был установлен ранее, выбор действия не потребуется, и будет выполнена установка с указанными в конфигурационном файле параметрами.
Footnotes
Заголовок раздела «Footnotes»-
Путь к файлу может отличаться в зависимости от версии PostgreSQL или Jatoba. ↩
-
Путь к файлу может отличаться в зависимости от версии PostgreSQL или Jatoba. ↩
-
Подробная информация о параметре
use_tlsприведена в подразделе Настройка TLS-соединения с СУБД. ↩ -
Подробная информация о параметре
root_cert_pathприведена в подразделе Настройка TLS-соединения с СУБД. ↩
