Показать полную графическую версию : PostGreSQl - разрешить подключения с удаленных IP
__sa__nya
22-11-2022, 12:08
Доброе время суток. Имеется PostgreSQL, сборка от 1С, версия 14.5.3.1. Нужно разрешить удаленные подключения с другого компьютера. Правлю файл /etc/postgresql/14/main/postgresql.conf.
Если я прописываю в разделе "Connections and Authentication" listen_addresses = '*' - удаленное подключение работает ( еще правится файл pg_hba.conf- добавляется метод аутентификации md5 для нужного IP).
Но, если я хочу, например, написать конкретный Адрес, и пишу
listen_addresses = 'localhost,192.168.2.126'
- В этом случае уже подключения нет. Гугление в интернете дает информацию что нужно править именно данный параметр, но у меня это не работает. Если смотреть логи PostGreSQl ( /var/log/postgresql/postgresql-14-main.log ), там есть строчки, судя по которым, создается мнение что PostGreSQl пытается не принимать подключения с IP, указанных в параметре listen_addresses, а "привязаться" к этим IP и "слушать" их, как если бы это были IP той машины на которой работает PostGreSQl.
Кто может подсказать как мне решить мой вопрос без варианта разрешения удаленных подключений с любых адресов ?
Но, если я хочу, например, написать конкретный Адрес, и пишу
listen_addresses = 'localhost,192.168.2.126' »
У Вас на сервере несколько сетевых интерфейсов?
Попробуйте так:
listen_addresses = '192.168.2.126, 127.0.0.1'
dmitryst
22-11-2022, 13:04
listen_addresses = 'localhost,192.168.2.126' »
= "слушать подключения к адресам локалхоста и 192.168.2.126"
То, что вам надо, в MYSQL делается как-то так....
GRANT ALL PRIVILEGES ON database.* TO 'vasya'@'11.22.33.44/255.255.255.0';
Поиск в гугле через пару минут:
listen_addresses = '*' - оставляем
Находим файл /var/lib/pgsql/data/pg_hba.conf (у вас может быть по другому пути)
В конец дописываем:
host samerole all 203.0.113.2/32 md5
где 203.0.113.2/32 - ваш комп, с которого можно заходить (если можно всем, меняем на 0.0.0.0/0), md5 - метод аутентификации. Перезапускаем сервер и проверяем..
__sa__nya
23-11-2022, 08:49
У Вас на сервере несколько сетевых интерфейсов? »
- Нет, один. Мне вообще нужно было чтобы я мог с не локального IP подключаться к PostGreSQL серверу. Google навел меня на параметр listen_addresses .
Поиск в гугле через пару минут:
listen_addresses = '*' - оставляем
Находим файл /var/lib/pgsql/data/pg_hba.conf (у вас может быть по другому пути) »
- Да, я в курсе. Но, когда ставишь listen_addresses = '*', то в принципе порт 5432 становится открытым с любого IP мне это не особо нравится. Смысл этой темы можно ли в PostGre настроить так чтобы он принимал подключения только с определенных IP-адресов.
__sa__nya, походу Вы совсем запутались.
listen_addresses »
Здесь задаётся на каком локальном интерфейсе принимать запросы;
Вам, вот тут, уже сказали как ограничить доступ с одного адреса - задать его и указать правильную маску:
Находим файл /var/lib/pgsql/data/pg_hba.conf (у вас может быть по другому пути) »
где 203.0.113.2/32 - ваш комп, с которого можно заходить »
Google навел меня на параметр »
Читайте официальную документацию (https://postgrespro.ru/docs/postgrespro/9.5/runtime-config-connection).
__sa__nya
23-11-2022, 09:18
NickM, видимо, да, параметр listen_addresses не про то чтобы писать IP с каких принимать подключения. Это привязка интерфейсов с этими IP. Про pg_hba в курсе. Но, как говорил выше, в любом случае нужно ставить listen_addresses = '*', и тогда порт 5432 открывается для всех.
Ну ладно, в общем понял. Спасибо.
в любом случае нужно ставить listen_addresses = '*', и тогда порт 5432 открывается для всех. »
А как Вы это представляете выборочное открытие порта?
Порт либо слушается, либо не слушается.
А вот ограничение по подключению к открытому порту как раз таки и настраивается.
Для сокрытия порта Вы можете воспользоваться брандмауэром, в котором настроить необходимое Вам правило.
dmitryst
23-11-2022, 10:35
__sa__nya, т.е. то, что я вам написал про добавление в конфиг, вам не надо? :drug:
Jula0071
23-11-2022, 11:55
The pg_hba.conf File (https://www.postgresql.org/docs/14/auth-pg-hba-conf.html)
dmitryst
23-11-2022, 11:58
Jula0071, так-то даже готовое ТС не удосужился проверить, а тут аж читать надо.... :drug:
Jula0071
23-11-2022, 12:08
а тут аж читать надо »
Админу, который не хочет в RTFM, лучше бы переквалифицироваться в дворники...
__sa__nya
23-11-2022, 12:35
__sa__nya, т.е. то, что я вам написал про добавление в конфиг, вам не надо? »
dmitryst, я же ответил еще в 4-м посте данной темы что этот вариант я так же находил но это не совсем то что мне нужно. :-)
И о проверке готового вы зря. Я же написал в первом посте что использованные варианты с postgresql.conf и pg_hba.conf не совсем устраивают.
Админу, который не хочет в RTFM, лучше бы переквалифицироваться в дворники... »
Взаимно...
Ты не прочел всю тему, а только последние сообщения и наспех подлил грязи. Ну так... Делать поспешные выводы без хорошего изучения вопроса - признак низкого интеллекта.
Jula0071
23-11-2022, 13:59
этот вариант я так же находил но это не совсем то что мне нужно »
Это именно то, что вам нужно. Ну прочитайте ж наконец документацию! Или у вас с этим проблемы, например, вы не владеете английским? Что такое listening address вам непонятно?
Если всё так сложно, ну ограничьте доступ к хосту на сетевом уровне (посредством брандмауэра). Правда, его тоже надо настраивать уметь и для этого читать документацию...
__sa__nya, мы с вами на брудершафт не пили, так что попрошу не фамильярничать, ок? Не нравится то, что я вам говорю, игнорьте, вот и всё.
Или у вас с этим проблемы, например, вы не владеете английским? »
Так ведь и в этом совсем не проблема, "Postgres Pro" выложила (https://habr.com/ru/news/t/695694/) русскоязычную документацию, выше как раз приводил ссылку на русскоязычный хэлп.
Jula0071
23-11-2022, 14:39
"Postgres Pro" выложила русскоязычную документацию, выше как раз приводил ссылку на русскоязычный хэлп. »
ТС нужна документация на 14-ю версию, она тоже есть? Вообще канеш хорошо, что переводы делают, но по своему опыту знаю, что они часто низкого качества и потому стараюсь избегать. Микрософт к примеру не стесняется машинного перевода KB, там вообще тихий ужас.
ТС нужна документация на 14-ю версию, она тоже есть? »
18.3. Подключения и аутентификация (https://postgrespro.ru/docs/postgrespro/14/runtime-config-connection)
19.1. Файл pg_hba.conf (https://postgrespro.ru/docs/postgrespro/14/auth-pg-hba-conf)
__sa__nya
23-11-2022, 14:58
__sa__nya, мы с вами на брудершафт не пили, так что попрошу не фамильярничать, ок? Не нравится то, что я вам говорю, игнорьте, вот и всё. »
- Абсолютно верно, не пили. Так давайте вы не будете меня оскорблять, вот и все. Я первый ничего негативного в ваш адрес не пишу, в отличие от вас.
В общем я получил ответы на свои вопросы. Спасибо.
dmitryst
23-11-2022, 18:03
__sa__nya, ну и? Не работает? ;)
Jula0071
23-11-2022, 18:20
dmitryst, надо было ласково взять за ручку, рассказать, что не только лишь у всех проблемы с восприятием реальности, погладить по головке... глядишь, дитя бы и не обиделось и сумело с пятой попытки вставить круглую палку не в квадратное гнездо.
__sa__nya
24-11-2022, 06:24
__sa__nya, ну и? Не работает? »
Работает. Не совсем так как представлял себе, ну да ладно.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.