我遇到的情况是,我需要在我的笔记本电脑上设置一个端口(位于防火墙后面的本地网络上),该端口对一般互联网开放,暂时用于测试目的。我们称这台机器为“LocalLaptop”
我有一个面向互联网的服务器,我可以完全控制该服务器,并通过 SSH 进行访问。我们将这台机器称为“RemoteServer”。
我正在考虑使用 来解决这个问题ssh -L
,但这似乎并没有解决问题。
我正在寻找的是这样的:
Internet ---> RemoteServer:8888 ---(ssh-tunnel)---> LocalLaptop:80
我可以这样做吗ssh
?我尝试了-L
和-R
选项,但无法让它们工作(它要么以错误的方式打开,要么仅限于127.0.0.1
在 RemoteServer 上。
-L
您需要将侦听地址明确指定为或选项的可选第 0 个子参数-R
(无论哪一个适合您 SSH 所在的方向):请参阅
man ssh_config
“LocalForward”或“RemoteForward”下的文档。请注意,对于远程侦听 ( ) 隧道,必须首先
-R
通过服务器的配置 ( ) 允许这样做:/etc/ssh/sshd_config