Настройка параметров подключения к PostgreSQL для Менеджера управления
1. Введение
В составе zVirt используется СУБД PostgreSQL, доступ к которому настраивается при установке Менеджера в соответствии с общими рекомендациями.
При необходимости вы можете произвести дополнительную настройку параметров подключения, в соответствии с вашими требованиями.
Для этого необходимо внести изменения в файл /var/lib/pgsql/data/pg_hba.conf.
2. Параметры подключения
TYPE DATABASE USER ADDRESS METHOD [OPTIONS]
-
TYPE: Тип подключения, может быть
local
для Unix-сокетов илиhost
для TCP/IP подключений. Для TCP/IP подключений также допустимо явное указание параметров шифрования:-
hostssl
- использовать SSL-шифрование. -
hostnossl
- не использовать SSL-шифрование. -
hostgssenc
- использовать GSSAPI-шифрование. -
hostnogssenc
- не использовать GSSAPI-шифрование.
-
-
DATABASE: Имя базы данных, к которой осуществляется подключение. Допустимо указание списка имен БД через запятую, а также использование ключевого слова
all
, указывающего на все БД. -
USER: Имя пользователя базы данных, которое будет использоваться для подключения. Допустимо указание списка имен пользователей через запятую, а также использование ключевого слова
all
, указывающего на всех пользователей. -
ADDRESS: Сетевой адрес или диапазон адресов, с которого разрешено подключение. Для локальных адресов используется 127.0.0.1/32 для IPv4 и ::1/128 для IPv6. Также допустимо использование имени компьютера, с которого осуществляется подключение (должно быть разрешимо в прямом и обратном направлении), а также ключевого слова
all
, указывающего на любые адреса. -
METHOD: Метод аутентификации, который будет использоваться для подключения. Допустимы следующие значения:
-
trust
- безусловное подключение. Этот метод позволяет тому, кто может подключиться к серверу с БД, войти под любым желаемым пользователем Postgres без введения пароля и без какой-либо другой аутентификации. -
reject
- отклонение подключения. Эта возможность полезна для «фильтрации» некоторых серверов группы, например, строка reject может отклонить попытку подключения одного компьютера, при этом следующая строка позволяет подключиться остальным компьютерам в той же сети. -
scram-sha-256
- подключение с парольной аутентификацией, использующей SCRAM-SHA-256. -
md5
- подключение с парольной аутентификацией, использующей SCRAM-SHA-256 или MD5. -
password
- подключение с парольной аутентификацией с открытым паролем. -
gss
- подключение с аутентификацией с использованием GSSAPI. Доступен только для TCP/IP подключений. -
ident
- получает имя пользователя операционной системы клиента, связываясь с сервером Ident, и проверяет, соответствует ли оно имени пользователя базы данных. Аутентификация ident может использоваться только для подключений по TCP/IP. -
peer
- получает имя пользователя операционной системы клиента из операционной системы и проверяет, соответствует ли оно имени пользователя запрашиваемой базы данных. Доступно только для локальных подключений. -
ldap
- аутентификация с использованием LDAP. -
radius
- аутентификация с использованием RADIUS. -
cert
- аутентификация с использованием SSL-сертификата.
-
-
OPTIONS: необязательное поле, которое может содержать параметры метода аутентификации в формате
ключ=значение
.
3. Обеспечение дополнительной безопасности
Для обеспечения дополнительной безопасности подключения к базе данных PostgreSQL, используемой Менеджером управления и его компонентами, необходимо правильно настроить файл /var/lib/pgsql/data/pg_hba.conf.
Приведенный ниже список параметров допустимо использовать только при размещении Менеджера управления, его БД (engine) и БД хранилища данных (ovirt_engine_history) на одной машине. В случае раздельного размещения Менеджера управления и Grafana/DWH необходимо актуализировать параметры подключения. |
local all all peer (1)
host ovirt_engine_history ovirt_engine_history_grafana 127.0.0.1/32 md5 (2)
host ovirt_engine_history ovirt_engine_history_grafana ::1/128 md5 (3)
host ovirt_engine_history ovirt_engine_history 127.0.0.1/32 md5 (4)
host ovirt_engine_history ovirt_engine_history ::1/128 md5 (5)
host engine engine 127.0.0.1/32 md5 (6)
host engine engine ::1/128 md5 (7)
1 | Разрешено локальное подключение по UNIX-сокетам всем пользователям ко всем БД. Необходимо для интерактивного взаимодействия с СУБД |
2 | Подключение Grafana к БД хранилища данных c использованием loopback IPv4 адреса. Необходимо для работы Grafana. |
3 | Подключение Grafana к БД хранилища данных c использованием loopback IPv6 адреса. Необходимо для работы Grafana. |
4 | Подключение к БД хранилища данных c использованием loopback IPv4 адреса. Необходимо для работы DWH. |
5 | Подключение к БД хранилища данных c использованием loopback IPv6 адреса. Необходимо для работы DWH. |
6 | Подключение к БД Менеджера управления c использованием loopback IPv4 адреса. Необходимо для работы служб, взаимодействующих с базой данных engine, в .т.ч веб порталов и утилиты engine-backup. |
7 | Подключение к БД Менеджера управления c использованием loopback IPv6 адреса. Необходимо для работы служб, взаимодействующих с базой данных engine, в .т.ч веб порталов и утилиты engine-backup. |
При описанной выше конфигурации сохраняется работоспособность компонентов Менеджера управления, при этом получение доступа извне невозможно.
4. Применение изменений
Настройка файла pg_hba.conf является критически важным шагом для обеспечения безопасности и правильного функционирования базы данных PostgreSQL и компонентов Менеджера управления. Убедитесь, что все параметры указаны корректно и соответствуют вашей среде и требованиям безопасности. |
Перед внесением изменений в файл, рекомендуем сделать его резервную копию. Например:
|
После внесения изменений в файл /var/lib/pgsql/data/pg_hba.conf, необходимо применения новую конфигурацию. Для этого:
-
Подключитесь по SSH к Менеджеру управления и авторизуйтесь под пользователем root.
-
Примените конфигурацию одним из следующих способов:
- Способ 1
-
-
Перезапустите службу postgresql:
systemctl reload postgresql
-
- Способ 2
-
-
Смените пользователя на postgres:
su - postgres
-
Примените конфигурацию
pg_ctl reload
-
5. Проверка подключения
Для проверки подключения к базе данных:
- Локальное подключение
-
-
Подключитесь по SSH к Менеджеру управления и авторизуйтесь под пользователем root.
-
Смените пользователя на postgres:
su - postgres
-
Выполните команду
psql
. Эта команда должна запустить интерактивную оболочку postgresql. -
Выйдите из интерактивной оболочки командой
exit
. -
Вернитесь в сессию root командой
exit
.
-
- Работоспособность компонентов Менеджера
-
-
На портале администрирования авторизуйтесь пользователем с административными правами.
-
Перейдите на вкладку События. Проконтролируйте отсутствие системных ошибок за последний час с момента изменения конфигурации подключения к СУБД.
-
Перейдите в портал мониторинга (Grafana) и убедитесь в наличии последних данных в любом разделе.
-