使用场景

  • 有一台公网服务器,能够对外开放服务进行访问,但是这个公网服务器资源较低,无法运行太多服务

  • 有一台闲置电脑可以全天候开机使用,且配置较好,可以部署多个服务,但是没有公网IP

  • 需求:将本地的服务反向代理到公网服务器,以实现通过公网服务器访问内网资源

配置条件

  • 必须有一台公网服务器
  • 本地设备能够连到公网服务器

配置方法

可以通过SSH反向隧道实现,具体如下

语法

ssh -NfR ${公网端口}:${本地地址}:${本地端口} ${公网服务器用户名}@${公网服务器地址}

如果你的SSH端口不是22,请使用-p参数指定SSH端口

示例

假设我需要将本地localhost3003端口映射到远程119.1.2.35007端口,则使用下面的命令

ssh -NfR 5007:localhost:3003 user@119.1.2.3

回车之后,输入SSH连接密码即可

配置完成就可以通过119.1.2.3:5007访问到localhost:3003,此时再配置公网服务器的反向代理,即可通过公网的http端口访问本地端口了