2

该网站说:

Tunnlr 使用 SSH 远程隧道。它将您本地机器上的一个端口安全地连接到我们公共服务器上的一个开放端口。启动 Tunnlr 客户端后,您本地计算机上的 Web 服务器将通过您的特殊 Tunnlr URL 对世界其他地方可用。

有人可以更详细地了解整个过程是如何工作的吗?或者也许指向允许同样事情的开源东西?

4

1 回答 1

6

SSH 协议允许在任一方向建立连接隧道。因此,根据上面的描述,这就是正在发生的事情:

  1. 您将客户端程序(SSH 客户端)下载到您的计算机并运行它。
  2. 客户端建立从您的计算机到 tunnlr 远程服务器的 SSH 连接
  3. 在 tunnlr 服务器上,为传入连接打开了一个访问端口。假设端口 1234。
  4. 现在,当任何人连接到tunnlr:1234tunnlr 服务器时,将通过在步骤 2 中建立的连接指示您的客户端程序在您的计算机内部打开一个连接 - 比如说到端口 80(例如,您正在那里运行一个网络服务器)。
  5. 隧道连接现在将在tunnlr:1234和之间打乱数据your_computer:80

如此有效,这就是正在运行的内容:

[some_remote_computer]<->[tunnlr:1234]<->[SSH tunnel]<->[your_computer:80]

假设some_remote_computer是您的朋友或您希望能够连接到本地 Web 服务器的任何其他人。

SSH 可用于许多平台(Linux、Windows、OSX 等)。你可以用它很容易地建立这样的隧道,但你当然需要访问你想在它们之间建立隧道的两台计算机。假设一台计算机是您自己的计算机,另一台是您租用的 VPS(或任何其他具有 SSH 访问权限的远程服务器)。现在您可以运行完全相同的设置。

tunnlr 的优点是他们为您管理远程服务器,并且他们有一个注册的主机名,您可以将其用于您的隧道。

于 2012-12-21T19:38:48.177 回答