在网络方面,我是一个完整的初学者,我正在尝试使用pagekite在我的机器上设置 TCP 隧道。我想将所有流量从一个 TCP 地址路由到我的本地主机上的一个端口,比如说 8080。然后我会启动一个处理程序localhost:8080
来处理传入的流量。我可以通过简单地使用ngrokngrok tcp 8080
来使用它,但是在免费的 ngrok 计划中,我无法保留 tcp 地址并且 ngrok 相当慢,所以我选择尝试使用pagekite。
Pagekite 通常允许通过隧道轻松连接到 HTTP 地址,但他们在此处提供了有关如何使用 PuTTY 和 Pagekite 创建由 HTTP 代理的 TCP 隧道的指南。
我按照他们的指南进行操作,但可以使用一些帮助来确定它是否符合我的要求。
我正在使用 Linux VM,所以我首先使用 openssh 设置了一个 SSH 服务器,如下所示:sudo service ssh start
然后我使用 pagekite 暴露了 SSH 服务器,如下所示:python3 pagekite.py 22 ssh:user.pagekite.me
然后我启动 PuTTY,并将主机名配置为user.pagekite.me
端口 22,使用端口 443 上的代理主机名设置 HTTP 代理,user.pagekite.me
最后从 PuTTY 机器创建一个隧道,源端口为 8080 和目标localhost:8080
。
现在我不确定这实际上完成了什么。我知道 PuTTY 机器连接到在我的 VM 上运行的 ssh 服务器,并且我能够从 PuTTY 终端使用 linux 终端,但这实际上是否创建了一个从user.pagekite.me:8080
to的 TCP 隧道localhost:8080
?此外,在这样做之后,如果我尝试设置处理程序,localhost:8080
我会收到以下错误:
Handler failed to bind to 0.0.0.0:8080
Rex::BindFailed The address is already in use or unavailable: (0.0.0.0:8080).
同样,我在网络方面完全一无所知,所以如果有人能解释我在做什么,甚至可以按照我的方式做我想做的事情,那将非常有帮助。