Din pg_hba.conf ser ud til at tillade forbindelser fra localhost. Den nemmeste måde at få dine SSH-tunnelforbindelser til at vises fra localhost er at få dem til at til lokal vært.
Følgende SSH-kommando forbinder til remote.example.com som bruger "bruger", og får din ssh-klient til at lytte på localhost, port 1111/tcp. Eventuelle forbindelser til den port vil blive videresendt over ssh-tunnelen, og på ssh-serversiden vil forbindelserne blive lavet til localhost, port 5432/tcp. Da vi opretter forbindelse til localhost, vil forbindelserne også se ud til at være fra localhost og bør matche din eksisterende pg_hba.conf-linje.
ssh -L 1111:localhost:5432 [email protected]
Hvis dette forventes at være en langvarig tunnel, vil jeg anbefale at bruge autossh
For at oprette forbindelse ved hjælp af psql-klienten på værten, hvor du kører ssh-klienten, skal du bruge noget som dette:
psql -h localhost -p 1111 -U your-db-username database-name
Du skulle derefter blive bedt om din databasebrugers adgangskode.
Alternativt kan du tilføje en linje som følger til en fil kaldet .pgpass
i din hjemmemappe på klienten, hvor du kører psql:
localhost:1111:database-name:your-db-user:your-db-password