frp+nginx映射内网服务至公网

需求

内网服务器无法直接访问公网,内网的客户端可以访问公网,现在想让公网的其他客户端访问内网的服务器
在这里插入图片描述

分析

  • 常规的方法就是在内网的出口设备上做一个目的NAT,指向内网的服务器
    流量走向:其他客户端–>目的NAT的公网地址–>内网服务器

  • 利用frp在公网服务器和内网客户端建立连接,在内网客户端利用nginx进行正向的代理,将流量转发至内网服务器
    流量走向:其他客户端–>公网服务器–>内网客户端–>内网服务器

配置测试

注:这里的内网服务器为HTTP服务,对外开放80端口;这里将该HTTP服务映射到公网;公网的服务器记得放通对应的端口,否则无法建立连接。

  1. 公网服务器配置
    1.1 配置frps.toml,bondport默认7000即可,用于内网客户端主动连接(公网服务器放通该端口)
    在这里插入图片描述
    1.2运行frp服务端
    在这里插入图片描述

  2. 内网客户端配置
    2.1配置frpc.toml:
    serverAddr:公网服务器的地址
    serverPort:前面配置的frps.toml监听口
    localPort:本地开放的端口,如果本地有该端口的服务,则通过remotePort就能直接访问到localPort的服务;这里将使用nginx监听该端口,进行转发
    remotePort:公网服务器将开放的端口,后续其他客户端通过访问该端口进行转发
    在这里插入图片描述
    2.2 运行frpc客户端
    在这里插入图片描述
    2.3配置nginx转发:
    listen 1080:即前面frpc.toml配置的localPort,
    server 10.121.230.41:80:即内网服务器的IP地址和端口
    在这里插入图片描述
    2.4运行nginx,这里start nginx是开启进程,-s reload是重新加载nginx的配置,保证没有报错
    在这里插入图片描述

效果验证

通过访问公网服务器的地址,成功访问到内网服务器的服务
在这里插入图片描述

  • 9
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值