我设置了一个反向 SSH 隧道,通过隧道连接到我的服务器。然后可以通过我的服务器上的 localhost:8080 访问远程服务器网页(刚刚通过curl 测试)。我想让网络的其他部分可以使用这项服务。我怎么做? UFW 处于非活动状态,因此我认为这不是导致我无法从网络连接的原因。
答案1
在 Ubuntu 18.04 上,默认情况下禁用从远程计算机到 SSH 隧道的端口转发,它只会转发来自 的请求localhost
,正如您所测试的那样。
要使网络中的远程计算机能够访问您的 SSH 隧道,您必须编辑 SSH 服务器设置:
echo 'GatewayPorts yes' | sudo tee -a /etc/ssh/sshd_config
(您可能会注意到此文件中有一个注释掉的行#GatewayPorts no
,因为它是默认的)
现在重新启动 SSH 服务:
sudo service ssh restart
现在,当远程主机请求时,端口转发到 SSH 隧道应该可以工作