powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Вопрос по доступу пользователя по сети
10 сообщений из 10, страница 1 из 1
Вопрос по доступу пользователя по сети
    #40081177
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, как правильно подключаться к БД postgresql по сети?
Имеется свежеустановленный postgresql версии 13.

БД работает, к ней можно подключиться локально:
Код: plaintext
1.
2.
3.
4.
5.
$ sudo -u postgres psql
psql (13.3 (Debian 13.3-1.pgdg100+1))
Введите "help", чтобы получить справку.

postgres=# 

В файл /etc/postgresql/13/main/pg_hba.conf я добавил следующую строчку:
Код: plaintext
host    all             all             10.1.144.3/32           md5

В файрволе доступ на порт 5432 разрешен.
Но при попытке подключиться с узла 10.1.144.3 под именем postgres я тут же получаю отказ.

Подскажите, как правильно завести пользователя-администратора, чтобы с БД можно было работать в GUI-клиенте?
...
Рейтинг: 0 / 0
Вопрос по доступу пользователя по сети
    #40081179
Фотография mefman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.
Подскажите, как правильно подключаться к БД postgresql по сети?
Имеется свежеустановленный postgresql версии 13.

БД работает, к ней можно подключиться локально:
Код: plaintext
1.
2.
3.
4.
5.
$ sudo -u postgres psql
psql (13.3 (Debian 13.3-1.pgdg100+1))
Введите "help", чтобы получить справку.

postgres=# 

В файл /etc/postgresql/13/main/pg_hba.conf я добавил следующую строчку:
Код: plaintext
host    all             all             10.1.144.3/32           md5

В файрволе доступ на порт 5432 разрешен.
Но при попытке подключиться с узла 10.1.144.3 под именем postgres я тут же получаю отказ.

Подскажите, как правильно завести пользователя-администратора, чтобы с БД можно было работать в GUI-клиенте?

Как звучит отказ-то?
...
Рейтинг: 0 / 0
Вопрос по доступу пользователя по сети
    #40081181
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
$ psql -h 10.1.128.14 -U postgres
psql: error: could not connect to server: Connection refused
	Is the server running on host "10.1.128.14" and accepting
	TCP/IP connections on port 5432?
...
Рейтинг: 0 / 0
Вопрос по доступу пользователя по сети
    #40081184
gav21
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.,

проверьте, что у вас слушается сетевой адрес и порт из конфига postgresql.conf (listen_address, port)
...
Рейтинг: 0 / 0
Вопрос по доступу пользователя по сети
    #40081192
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, спасибо.
В конфигурации был разрешен только localhost.

Но теперь другая ошибка:
Код: plaintext
1.
2.
3.
4.
$ psql -h 10.1.128.14 -U postgres
Password for user postgres: 
psql: error: ВАЖНО:  пользователь "postgres" не прошёл проверку подлинности (по паролю)
ВАЖНО:  пользователь "postgres" не прошёл проверку подлинности (по паролю)

В качестве пароля я указываю пароль пользователя ОС postgres.
...
Рейтинг: 0 / 0
Вопрос по доступу пользователя по сети
    #40081196
gav21
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.,
ОС пользователь и пользователь в БД не одно и тоже.
Для безпарольного подключения можете временно добавить в pg_hba.conf
local all all trust

Это даст возможность подключиться локально без пароля, например, чтобы создать другие учетные записи и задать для них пароль.
p.s. локальное подключение делать без ключа указания хоста (-h)
...
Рейтинг: 0 / 0
Вопрос по доступу пользователя по сети
    #40081197
Guzya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Посмотрите лог постгреса, там должно быть сказанно, с какой строкой из pg_hba пытается идти сопоставление.
...
Рейтинг: 0 / 0
Вопрос по доступу пользователя по сети
    #40081198
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наверное я что-то неправильно понимаю.
Я ведь локально и так подключаюсь.
Просто я думал, что в PostgreSQL используется проверка авторизации через ОС, потому что требовалось подключаться под соответствующей системной учетной записью (через PAM или еще как):
Код: plaintext
1.
2.
3.
4.
5.
6.
$ psql -U postgres
psql: ошибка: ВАЖНО:  пользователь "postgres" не прошёл проверку подлинности (Peer)

$ sudo -u postgres psql
psql (13.3 (Debian 13.3-1.pgdg100+1))
Введите "help", чтобы получить справку.

Если же пользователь ОС и пользователь БД это независимые пользователи, то непонятно, зачем все так усложнять.

Тогда как обычно рекомендуется делать?
Подключиться локально, создать пользователя, дать ему роль администратора, разрешить сетевой доступ и далее работать через клиента?
...
Рейтинг: 0 / 0
Вопрос по доступу пользователя по сети
    #40081207
gav21
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.
Наверное я что-то неправильно понимаю.
Я ведь локально и так подключаюсь.
Просто я думал, что в PostgreSQL используется проверка авторизации через ОС, потому что требовалось подключаться под соответствующей системной учетной записью (через PAM или еще как):
Код: plaintext
1.
2.
3.
4.
5.
6.
$ psql -U postgres
psql: ошибка: ВАЖНО:  пользователь "postgres" не прошёл проверку подлинности (Peer)

$ sudo -u postgres psql
psql (13.3 (Debian 13.3-1.pgdg100+1))
Введите "help", чтобы получить справку.

Если же пользователь ОС и пользователь БД это независимые пользователи, то непонятно, зачем все так усложнять.

Тогда как обычно рекомендуется делать?
Подключиться локально, создать пользователя, дать ему роль администратора, разрешить сетевой доступ и далее работать через клиента?


По умолчанию так pg_hba и настраивается после инициализации: разрешены локальные (unix-сокет) подключения без пароля и сетевые с локального интерфейса (127.0.0.1), для того чтобы:
>>Подключиться локально, создать пользователя, дать ему роль администратора, разрешить сетевой доступ и далее работать через клиента
...
Рейтинг: 0 / 0
Вопрос по доступу пользователя по сети
    #40081223
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.
Наверное я что-то неправильно понимаю.
Я ведь локально и так подключаюсь.
Просто я думал, что в PostgreSQL используется проверка авторизации через ОС, потому что требовалось подключаться под соответствующей системной учетной записью (через PAM или еще как):
Код: plaintext
1.
2.
3.
4.
5.
6.
$ psql -U postgres
psql: ошибка: ВАЖНО:  пользователь "postgres" не прошёл проверку подлинности (Peer)

$ sudo -u postgres psql
psql (13.3 (Debian 13.3-1.pgdg100+1))
Введите "help", чтобы получить справку.

Если же пользователь ОС и пользователь БД это независимые пользователи, то непонятно, зачем все так усложнять.

Тогда как обычно рекомендуется делать?
Подключиться локально, создать пользователя, дать ему роль администратора, разрешить сетевой доступ и далее работать через клиента?


Проставить какой то пароль для postgres в базе и использовать его.

PS: "так усложнять" это как? нужно с одной стороны обеспечить доступ админу от postgres системной учетки локальный без пароля и одновременно закрыть доступ локальный же для всех остальных пользователей в системе.

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Вопрос по доступу пользователя по сети
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]