Настройка удаленного подключения к базе PostgreSQL
Материал из Rosalab Wiki
Это снимок страницы. Он включает старые, но не удалённые версии шаблонов и изображений.
Чтобы узнать, где находится конфигурационный файл выполняем:
# su - postgres -c "psql -c 'SHOW config_file;'" или $ ps aux | grep postgres | grep -- -D
В росе 2021.1 такой путь
/var/lib/pgsql/data/postgresql.conf
В убунте 18
/etc/postgresql/10/main/postgresql.conf
Переходим в каталог
# cd /var/lib/pgsql/data/
Открываем конфигурационный файл
# vim postgresql.conf
Вносим изменение в строку listen_addresses (стр. ~59):
Вместо localhost ставим *:
listen_addresses = '*'
> по умолчанию, параметр закомментирован и настроен на прослушивание запросов только с локального сетевого интерфейса. В данном примере мы разрешили прослушивание запросов на всех IP-адресах (*), но, если требуется более безопасная настройка, можно просто перечислить последние через пробел. >Возможные варианты: >listen_addresses = '0.0.0.0' чтобы слушать все IPv4; >listen_addresses = '::' чтобы слушать все IPv6; >listen_addresses = 'your.host.ip.adress' определенный адрес или список адресов через запятую.
Далее необходимо выполнить настройку файла pg_hba.conf, который расположен в той же директории.
# vim pg_hba.conf
В конец файла добавим строку:
host name_database username ip/32 md5
Сия запись разрешает подключение к БД name_database пользователю username с указанным IP адресом используя пароль.
После нужно перезагрузить сервер PostgreSQL:
# service postgresql restart
Пробуем подключиться:
$ psql -U username -d name-database --host remote-ip