Разрешение внешних подключений к СУБД PostgreSQL

Чтобы разрешить внешние подключения к серверу базы данных необходимо отредактировать файл pg_hba.conf и перезапустить службу PostgreSQL Database Server.

Файл pg_hba.conf находится в каталоге C:\Program Files\PostgreSQL\<номер версии>\data. Отредактировать его можно в любом текстовом редакторе, а также с помощью утилиты pgAdmin.

Для настройки внешних подключений с помощью утилиты pgAdmin необходимо:

  1. Открыть утилиту pgAdmin.
  2. В меню File выбрать пункт Open pg_hba.conf....

  3. Выбрать файл pg_hba.conf для настройки внешних подключений.
  4. В открывшемся окне выполнить двойной щелчок мышью на пустом флажке для добавления нового разрешенного подключения.

  5. Указать параметры подключения:
    • Enabled - установить флаг. Если флаг снять, то указанное подключение будет сохранено в файле pg_hba.conf в качестве комментария (т.е. будет неактивным).
    • Type - выбрать из выпадающего списка значение "Host" (авторизация на уровне хоста).
    • Database - выбрать из выпадающего списка значение "All" (подключение разрешено ко всем базам данных).
    • User - выбрать из выпадающего списка значение "All" (подключение разрешено для всех пользователей).
    • IP Address - указать в формате IP/Mask диапазон IP-адресов, с которых будет осуществляться подключение. Например: "192.168.1.112/32".
    • Method - выбрать значение "md5" (тип шифрования передаваемой информации).

    Подсказка

    Множество всех адресов соответствует нулевой маске подсети (обозначается /0). Конкретный адрес IPv4 соответствует маске подсети с длиной префикса в 32 бита (обозначается /32).

  6. Аналогичным образом (см. п. 5) по необходимости добавить другие подключения.
  7. Нажать CTRL+S для сохранения файла pg_hba.conf и закрыть утилиту pgAdmin.

Для настройки внешних подключений с помощью текстового редактора необходимо:

  1. Открыть файл pg_hba.conf с помощью текстового редактора (например, Блокнота).
  2. Найти в файле следующую строку:

    # Ipv4 local connections

  3. В список, расположенный ниже, добавить запись, соответствующую диапазону IP-адресов компьютеров, с которых будут осуществляться подключения.

    Пример:

    host all all 192.168.0.7/32 md5

    где:

    • host - авторизация на уровне хоста.
    • all all - доступ открыт для всех пользователей и ко всем базам данных.
    • 192.168.0.7/32 - диапазон IP адресов компьютеров, с которых будет производиться подключение, в формате IP/Mask (в данном случае - один IP-адрес).
    • md5 - тип шифрования передаваемой информации.