powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Не работает md5 аутентификация
13 сообщений из 13, страница 1 из 1
Не работает md5 аутентификация
    #39732278
trom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
стоит PostgreSQL 9.2.24 на
Сentos 7

сделал такой конфиг
# "local" is for Unix domain socket connections only
local all all md5

# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all : : 1/128 md5

Но почему то если задать пароль в виде md5 хеша ничего не работает, а если пароль в обычном виде то все ок
Все одинаково не работает на php сайте который использует postgres и в phppgadmin

так же нужен бекап БД по крону, он работает вообще только если вместо md5 поставить trust
строка в кроне
/usr/bin/pg_dump -h 127.0.0.1 -p 5432 -U postgres -w -F tar -b -v -f /backup/bd.backup bd_name

файл .pgpass с правами 600 в директории рут положил
в таком виде
127.0.0.1:5432:bd_name:login:pass

так же делал команду которая вообще ничего не поменяла
ALTER USER имя_юзверя WITH ENCRYPTED PASSWORD 'пароль';

после выполнение команды в консоле появилась запись ALTER ROLE
имя юзера в команде ALTER USER не postgres а тот который используется в php
пароль в команде ALTER USER пишу не зашифрованный
...
Рейтинг: 0 / 0
Не работает md5 аутентификация
    #39735914
trom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
никто не в курсе?
или я где то сильно туплю?
...
Рейтинг: 0 / 0
Не работает md5 аутентификация
    #39735942
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tromникто не в курсе?
или я где то сильно туплю?

Расшифруйте что вы имеете в виду под "Но почему то если задать пароль в виде md5 хеша ничего не работает, а если пароль в обычном виде то все ок"?
Где задать пароль?
...
Рейтинг: 0 / 0
Не работает md5 аутентификация
    #39736117
Alexius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
trom,

как вы хеш пароля делаете? если берете от другого пользователя, то он не подойдет, т.к. он будет другим. надо брать md5(password || username), а не просто от пароля.
...
Рейтинг: 0 / 0
Не работает md5 аутентификация
    #39737830
trom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Maxim Boguktromникто не в курсе?
или я где то сильно туплю?

Расшифруйте что вы имеете в виду под "Но почему то если задать пароль в виде md5 хеша ничего не работает, а если пароль в обычном виде то все ок"?
Где задать пароль?

В php скрипте который конектиться к базе данных
А по крону бекап работает только если в pg_hba.conf стоит trust
...
Рейтинг: 0 / 0
Не работает md5 аутентификация
    #39737831
trom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexiustrom,

как вы хеш пароля делаете? если берете от другого пользователя, то он не подойдет, т.к. он будет другим. надо брать md5(password || username), а не просто от пароля.
Не знал что еще надо username в хеше задавать, но в любом случае md5 вообще не работает, так как пароль принимается только в незашифрованном виде
...
Рейтинг: 0 / 0
Не работает md5 аутентификация
    #39737841
Alexius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
trom,

а для чего вы пытаетесь руками хеш сгенерировать? в базе хранится/работать одинаково будет что если вы открытым текстом в create/alter role пароль зададите, что если хеш будет. и там в начале строки префикс 'md5': 'md5'||md5(password || username). можете проверить, как на самом деле хранится пароль в системном вью pg_shadow (доступен только superuser).
если не хотите, чтобы в истории команд сохранилась команда смены пароля с самим паролем, в psql есть команда \password [username] для этой цели.
...
Рейтинг: 0 / 0
Не работает md5 аутентификация
    #39737857
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tromMaxim Bogukпропущено...


Расшифруйте что вы имеете в виду под "Но почему то если задать пароль в виде md5 хеша ничего не работает, а если пароль в обычном виде то все ок"?
Где задать пароль?

В php скрипте который конектиться к базе данных
А по крону бекап работает только если в pg_hba.conf стоит trust

В смысле вы пытаетесь указать md5 от пароля в качестве пароля при коннекте?????????
Как вам эта странная идея в голову то пришла?
Оно так не работает и работать не может и не будет.
md5 это о том как будет передаваться пароль по протоколу между приложением и базой а не о том как надо указывать пароль в приложении.
В приложении пароль указывается как есть всегда на то он и пароль.
https://www.postgresql.org/docs/10/auth-methods.html#AUTH-PASSWORD
...
Рейтинг: 0 / 0
Не работает md5 аутентификация
    #39737906
trom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexius, Maxim Boguk
сделал select passwd from pg_shadow;
показывает три записи каждая начинается с
md5

то есть все храниться в md5 правильно ?

Так а с кроном бекап почему работает только если trust стоит в pg_hba.conf?
...
Рейтинг: 0 / 0
Не работает md5 аутентификация
    #39737923
Alexius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tromAlexius, Maxim Boguk
сделал select passwd from pg_shadow;
показывает три записи каждая начинается с
md5

то есть все храниться в md5 правильно ?

Так а с кроном бекап почему работает только если trust стоит в pg_hba.conf?

да. вы попробуйте выполнить команду вручную (от того же пользователя, от которого крон запускает команду) и покажите что выводится.
...
Рейтинг: 0 / 0
Не работает md5 аутентификация
    #39737976
trom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexius,

[root@centos ~]# su admin
[admin@centos root]$ /usr/bin/pg_dump -h 127.0.0.1 -p 5432 -U admin_postgres -w -F tar -b -v -f /home/admin/backup/admin_bd.backup admin_bd
could not change directory to "/root"
pg_dump: [archiver (db)] connection to database "admin_bd" failed: fe_sendauth: no password supplied

Это когда в pg_hba.conf стоит md5
...
Рейтинг: 0 / 0
Не работает md5 аутентификация
    #39737979
Alexius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
trom,

.pgpass должен быть home directory пользователя admin (от которого подключаемся), а не в /root.
...
Рейтинг: 0 / 0
Не работает md5 аутентификация
    #39737994
trom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexius,

Заработало! Огромное спасибо! думал уже не получиться.

Может кому интересно
файл .pgpass с правами 600 скопировал в директорию /home/admin
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Не работает md5 аутентификация
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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