PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

PostgreSQL via túnel SSH


Seu pg_hba.conf parece permitir conexões do localhost. A maneira mais fácil de fazer com que suas conexões de túnel SSH apareçam no host local é torná-las para localhost.

O comando SSH a seguir se conecta a remote.example.com como usuário "usuário" e faz com que seu cliente ssh escute no host local, porta 1111/tcp. Quaisquer conexões feitas a essa porta serão encaminhadas pelo túnel ssh e, no lado do servidor ssh, as conexões serão feitas ao host local, porta 5432/tcp. Como estamos nos conectando ao localhost, as conexões parecerão ser do localhost também, e devem corresponder à sua linha pg_hba.conf existente.
ssh -L 1111:localhost:5432 [email protected]

Se for esperado que este seja um túnel de longa duração, eu recomendaria usar autossh

Para conectar usando o cliente psql no host em que você está executando o cliente ssh, use algo assim:
psql -h localhost -p 1111 -U your-db-username database-name

Em seguida, você deve ser solicitado a fornecer a senha do usuário do banco de dados.

Alternativamente, você pode adicionar uma linha de linha a seguir a um arquivo chamado .pgpass em seu diretório inicial no cliente onde você está executando o psql:
localhost:1111:database-name:your-db-user:your-db-password