У меня есть сервер PostgreSQL, а отдельный компьютер является его клиентом. Они находятся в одной сети. Если я использую Psql команду какИдентификация аутентификации прошла неудачно на PostgreSQL через туннель SSH
psql --host db_ip_address --port 5432 --user user base_name
соединение идет хорошо и все работает.
Но если я открою SSH туннель к БД сервера, например:
ssh -L 63333:localhost:5432 [email protected]_ip_address
, а затем попытаться сделать то же самое, как:
psql --host localhost --port 63333 --user user base_name
чем вдруг исходящее сообщение об ошибке :
psql: FATAL: Ident authentication failed for user "user"
pg_hba.conf на сервере есть эти строки:
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 192.168.0.49/32 trust
host all all 192.168.0.50/32 trust
host all all 192.168.0.48/32 trust
# IPv6 local connections:
host all all ::1/128 ident
мне нужно использовать SSH туннелей, потому что я на самом деле нужно еще один туннель для моего собственного компьютера, и это единственный способ получить подключение к БД на нем. И я не хочу менять какую-либо конфигурацию или базу на сервере PostgreSQL, потому что он работает в режиме реального времени. Надежды на помощь.
На самом деле, это похоже на решение. Я просто создаю туннели, используя '' 'ssh -L 63333: 127.0.0.1: 5432 root @ db_ip_address''', и это неожиданно работает! Thanx! – Pycz