【问题标题】:OSX SSH tunnel from remote port to local从远程端口到本地的 OSX SSH 隧道
【发布时间】:2017-06-02 08:52:27
【问题描述】:

我过去创建了 SSH 隧道,但在 OSX 上遇到了问题。我正在寻找一个网站的端口 80,并将其定向到我的 localhost:8080。当我运行这个命令时

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

我得到了默认的 apache '它可以工作!'页。

为什么我没有获得远程机器(正在运行网络应用程序)的端口 80?

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

【问题讨论】:

    标签: macos ssh portforwarding


    【解决方案1】:

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

    127.0.0.1 <cloud_hostname>
    

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

    【讨论】:

    • 不幸的是,这似乎不起作用。我仍然从云服务器获得默认的 ubuntu apache 页面。我读过 OSX 掩盖了一些常见的 SSH 功能。我可能在一个更合适的论坛上问过这个问题:SU Forum
    • 在进行了一些挖掘之后,我对正在发生的事情有了一些了解(但仍然没有解决方案)。我收到的页面是 /var/www/HTML 中的默认页面。所以我的 Flask 应用程序路由没有被视为默认路由。无论如何,没有关于如何将隧道引导到 Flask 应用程序的答案。
    猜你喜欢
    • 2021-05-11
    • 1970-01-01
    • 2021-05-24
    • 2018-10-29
    • 2011-07-08
    • 1970-01-01
    • 2012-08-08
    • 2016-11-10
    • 1970-01-01
    相关资源
    最近更新 更多