是否有可能使用postgresql建立从服务器到客户端的SSH隧道

是否有可能使用postgresql建立从服务器到客户端的SSH隧道,postgresql,server,ssh-tunnel,Postgresql,Server,Ssh Tunnel,我有一台安装了PostgreSQL和SSH服务器的服务器。我有另一台客户机,我想从那里安全地连接到服务器上的PostgreSQL。我使用了SSH隧道,它正在工作 我尝试使用以下方式将客户端与服务器连接: $ ssh -L 3307:localhost:3306 user@Host -N -f 它正在工作。但是现在我在考虑是否可以从服务器端启动ssh隧道。这意味着在服务器机器上运行ssh命令,以便获得更安全的连接为什么不设置ssl=on并使用PostgreSQL的内置ssl支持?可能是类似ssh

我有一台安装了PostgreSQL和SSH服务器的服务器。我有另一台客户机,我想从那里安全地连接到服务器上的PostgreSQL。我使用了SSH隧道,它正在工作

我尝试使用以下方式将客户端与服务器连接:

$ ssh -L 3307:localhost:3306 user@Host -N -f

它正在工作。但是现在我在考虑是否可以从服务器端启动ssh隧道。这意味着在服务器机器上运行ssh命令,以便获得更安全的连接

为什么不设置
ssl=on
并使用PostgreSQL的内置ssl支持?可能是类似
ssh-R 3307:localhost:3306的反向隧道user@ClientMachine
?(我已经有一段时间没有做相反的事情了,但我认为这是正确的想法和格式)。@jnevil是的,我使用ssh-R 3306:localhost:3307尝试了远程端口转发user@ClientMachine这不起作用。3306应该是远程服务器上数据库的端口号,3307是客户端上的端口号。它不起作用,sshd日志告诉我,
错误:bind:Address已在使用
,这很容易理解3306是服务器上PostgreSQL数据库使用的数据库端口号(对不起,它实际上应该是5432,让我们以3306为例)。因此,据我所知,在服务器机器上运行ssh隧道是不可能的?@LaurenzAlbe谢谢,这应该是一个选项。但目的是我们可以在服务器上启动这种连接。因此,服务器端的管理员可以控制此连接,并在需要时停止连接。您可以通过
pg_hba.conf
中的条目以传统方式控制此连接。那会更方便。