Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, баз данных и сетевого оборудования. Перед выполнением действий обязательно создайте резервную копию. При отсутствии необходимой квалификации обратитесь к ИТ-специалистам.
PG_HBA_REJECT_CONNECTION 1С:Предприятие и СУБД

PostgreSQL: ошибка pg_hba.conf rejects connection for host — как разрешить доступ

Обновлено: 26.08.2026  ·  Официальная база знаний
  • 1С не может подключиться к базе данных на сервере PostgreSQL.
  • В окне ошибки отображается: FATAL: no pg_hba.conf entry for host "192.168.1.50", user "postgres", database "ib_1c", no encryption.
  • Утилита pgAdmin или сервер 1С не может авторизоваться на удаленном сервере СУБД.

Что означает эта ошибка простыми словами

PostgreSQL в целях безопасности по умолчанию блокирует все входящие подключения с любых других компьютеров сети. Файл pg_hba.conf — это внутренний список разрешенных IP-адресов и способов авторизации. Если нужного компьютера или подсети в нем нет, сервер отклоняет запрос.

Шаг 1. Поиск файла pg_hba.conf

Файл конфигурации располагается в каталоге данных PostgreSQL:

  • В Linux: /var/lib/pgsql/data/pg_hba.conf или /etc/postgresql/15/main/pg_hba.conf
  • В Windows: C:\Program Files\PostgreSQL 15 1C\data\pg_hba.conf

Шаг 2. Добавление разрешающего правила

  1. Откройте файл pg_hba.conf в текстовом редакторе (например, Блокнот или nano).
  2. Прокрутите файл в самый низ и добавьте строку для вашей локальной сети:
# Разрешить подключение для сервера 1С со всей локальной подсети
host    all             all             192.168.1.0/24          md5

# Или разрешить только для одного конкретного IP-адреса сервера 1С:
host    all             all             192.168.1.50/32         md5

Шаг 3. Проверка прослушивания сети в postgresql.conf

  1. В той же папке откройте файл postgresql.conf.
  2. Найдите параметр listen_addresses и установите:
listen_addresses = '*'

Шаг 4. Перезапуск службы PostgreSQL

# Для Linux:
systemctl restart postgresql-15

# Для Windows:
Restart-Service postgresql*
Практический опыт инженера: Правила в pg_hba.conf обрабатываются сверху вниз до первого совпадения. Всегда размещайте специфичные правила с конкретными IP выше общих диапазонов.

Частые вопросы (FAQ)

Что означает метод аутентификации md5 или scram-sha-256?

Это алгоритм шифрования паролей при проверке подлинности. Для 1С версий платформы 8.3 рекомендуется использовать метод md5 или scram-sha-256 (в зависимости от настроек пользователя базы).

Безопасно ли указывать host all all 0.0.0.0/0 md5?

Указание 0.0.0.0/0 разрешает подключение с любого IP в мире. В продакшене это крайне небезопасно, указывайте только диапазон вашей внутренней локальной сети.

Нужно ли перезагружать весь сервер после правки pg_hba.conf?

Нет, достаточно выполнить команду pg_ctl reload или перезапустить службу PostgreSQL.

Какой сетевой порт использует PostgreSQL по умолчанию?

По умолчанию используется TCP порт 5432. Убедитесь, что он открыт в брандмауэре (ufw/firewalld/Windows Defender).