我有一个 Web 服务器,尚未准备好全面投入使用,但我仍然想远程测试一些东西。我可以利用 SSH 隧道连接到服务器,然后使用该隧道路由到在同一台服务器上运行的 Web 服务吗?如果可以,该怎么做?
我意识到实施防火墙例外会更容易,但目前这不是一个选择。
抱歉,如果这让您感到困惑。我同意这是一个独特的场景。
CentOS 5.x
答案1
我知道切诺基管理是这样工作的,所以假设你已经将你的网络服务器绑定到你的本地主机的 8080 端口
ssh -L 8080:localhost:8080 your_servers_ip
之后您可以通过以下方式访问远程接口http://本地主机:8080每个请求都将被转发到运行您的网络服务器的远程 IP。
答案2
正如卢卡斯所说,“localhost”也可以是 SSH 主机可访问的任何 IP 地址。
请注意,如果您使用名称虚拟主机,您还需要执行 /etc/hosts 破解,以便将一些内容附加到现有的 127.0.0.1 行,例如:
127.0.0.1 localhost secretwebserver.example.com
您的浏览器随后可以使用http://secretwebserver.example.com:8080。