sql >> Databáze >  >> RDS >> PostgreSQL

PostgreSQL přes SSH tunel

Zdá se, že váš pg_hba.conf povoluje připojení z localhost. Nejjednodušší způsob, jak zajistit, aby se vaše připojení k tunelu SSH objevila z localhost, je přimět je k localhost.

Následující příkaz SSH se připojí k remote.example.com jako uživatel „user“ a způsobí, že váš klient ssh bude naslouchat na localhost, port 1111/tcp. Všechna připojení vytvořená na tomto portu budou předána přes tunel ssh a na straně serveru ssh budou připojení vytvořena na localhost, port 5432/tcp. Vzhledem k tomu, že se připojujeme k localhost, budou připojení také vypadat jako z localhost a měla by odpovídat vašemu stávajícímu řádku pg_hba.conf.

ssh -L 1111:localhost:5432 [email protected]

Pokud se očekává, že se bude jednat o dlouhodobý tunel, doporučil bych použít autossh

Chcete-li se připojit pomocí klienta psql na hostiteli, kde používáte klienta ssh, použijte něco takového:

psql -h localhost -p 1111 -U your-db-username database-name

Poté byste měli být vyzváni k zadání hesla uživatele databáze.

Alternativně můžete do souboru s názvem .pgpass přidat následující řádek ve vašem domovském adresáři na klientovi, kde používáte psql:

localhost:1111:database-name:your-db-user:your-db-password



  1. Řazení hodnot null po všech ostatních, kromě speciálních

  2. pgAdmin Alternativy - Správa databáze PostgreSQL GUI ClusterControl

  3. Jak používat řazení UTF-8 v databázi SQL Server?

  4. MariaDB LENGTHB() Vysvětleno