通过端口 80 进行 SSH 隧道传输,但仅限于单个子域?

通过端口 80 进行 SSH 隧道传输,但仅限于单个子域?

我在一台旧机器上运行 lighttpd 和 openssh。是否可以配置 lighttpd 通过 www.example.com:80 处理网络流量,但通过 ssh.example.com:80 处理 ssh 流量?

由于一些不相关的情况,我有时会发现自己被困在仅允许通过端口 80 的防火墙后面。当然,这在使用 HTTPS 连接到站点时会带来问题。我想在这个已经提供内容的盒子上设置一个 ssh 隧道。

为了使问题具有普遍性和实用性,我将以类似于标题的方式表述我的问题:是否可以设置 ssh 来监听特定子域上的特定端口?

答案1

由于您使用虚拟主机来区分不同的流量格式,因此您的 HTTP 服务器(本例中为 lighttpd)必须负责区分流量,这意味着所有流量都必须符合 HTTP 规范。我能想到的最佳解决方案是允许 HTTP 代理流量(具体包括连接当然,您也可以使用 HTTP 代理方法 (proxy method) 并获得适当的授权,然后通过 HTTP 代理连接到 SSH。

只要小心不要允许未经身份验证的代理流量,否则您将在几分钟内成为垃圾邮件中继。

还,开瓶器

相关内容