Как настроить postgresql postgresql.conf listen_addresses для нескольких IP-адресов
Я могу нормально подключиться к удаленному серверу postgresql, который имеет ограничения на подключение к нескольким IP-адресам в файле pg_hba.conf, но достаточно ли этого, если в файле postgresql.conf для listen_addresses
установлено значение "*"
?
Эти файлы указывают, что этот параметр может принимать разделенный запятыми список IP-адресов, но если я это сделаю, я потеряю возможность удаленного подключения.
postgresql-8.4.9 rhel
Ответы
Ответ 1
listen_addresses контролирует, на какие IP-адреса будет отвечать сервер, а не на какие IP-адреса сервер будет разрешать подключения для аутентификации. Это вполне разумно и нормально использовать listen_addresses '*'
, чтобы сервер принимал входящие соединения на любом ip, назначенном интерфейсу на сервере postgresql, при использовании pg_hba.conf для контролировать доступ на более мелком уровне, для которого IP-адреса сервер будет принимать логины для конкретных баз данных и пользователей.
Ответ 2
Настройка listen_addresses на '*' нормальна, как указывает dbenhur. Также вы можете использовать такие инструменты, как iptables, чтобы запретить доступ к порту отдельно от некоторых удаленных IP-адресов. Вы можете сделать и то и другое: избыточность в безопасности не обязательно является плохим (хотя, полагаясь на безопасность IP-адреса, это не так хорошо).