从远程端口到本地的 OSX SSH 隧道



我过去创建过SSH隧道,但是我在OSX上遇到了问题。我希望获取网站的端口 80,并将其定向到我的本地主机:8080。当我运行此命令时

ssh -L 8080:<cloud_ip_address>:80 root@<cloud_ip_address> -N

我得到默认的apache"它有效!"页面。

为什么我没有获得远程计算机(正在运行 Web 应用)的端口 80?

更新我还没有解决方案,但我有更多的信息。我得到的页面是/var/www/html 中的默认页面,但我正在提供一个没有静态页面的 Flask 应用程序。

因为HTTP协议不仅包含IP地址,还包含主机名(您在浏览器中键入的URL),这在<cloud_hostname>localhost之间有所不同。最简单的欺骗方法是创建/etc/hosts(会有一些OSX替代方案 - 搜索...)条目,将远程计算机的主机名重定向到localhost。

127.0.0.1 <cloud_hostname>

但请注意,在这种情况下,您将无法使用主机名访问远程计算机!

最新更新