4
pg_hba.conf
Формат файла, типы записей, методы аутентификации
30 минУрок 4 из 7
Прогресс0%
Теория
pg_hba.conf — файл конфигурации аутентификации PostgreSQL (Host-Based Authentication).
Определяет, какие пользователи могут подключаться с каких хостов и каким методом.
Формат записи: TYPE DATABASE USER ADDRESS METHOD
Порядок записей важен — PostgreSQL проверяет сверху вниз и использует первое совпадение.
Практика
1. Просмотр текущего pg_hba.conf
Посмотрите текущие настройки аутентификации:
Просмотр текущего pg_hba.conf
Команда
sudo cat /etc/postgresql/16/main/pg_hba.conf | grep -v '^#' | grep -v '^$'Вывод:
local all postgres peer local all all peer host all all 127.0.0.1/32 scram-sha-256 host all all ::1/128 scram-sha-256
2. Настройка аутентификации для репликации
Добавьте запись для подключения реплики:
Настройка аутентификации для репликации
Команда
echo 'host replication replicator standby-ip/32 scram-sha-256' | sudo tee -a /etc/postgresql/16/main/pg_hba.confВывод:
host replication replicator standby-ip/32 scram-sha-256
3. Настройка шифрованного подключения
Добавьте запись для SSL-подключений:
Настройка шифрованного подключения
Команда
echo 'hostssl all all 0.0.0.0/0 scram-sha-256' | sudo tee -a /etc/postgresql/16/main/pg_hba.confВывод:
hostssl all all 0.0.0.0/0 scram-sha-256
Проверка
Проверьте, что записи добавлены:
Проверка
Команда
sudo grep -E 'host|hostssl' /etc/postgresql/16/main/pg_hba.conf | grep -v '^#'Вывод:
host all all 127.0.0.1/32 scram-sha-256 host all all ::1/128 scram-sha-256 host replication replicator standby-ip/32 scram-sha-256 hostssl all all 0.0.0.0/0 scram-sha-256