FRP内网穿透实践

前情

FRP是一种内网穿透技术,一般应用于以下场景:

  • 公网服务器资源有限,部分资源需要本地部署,供外网访问
  • 第三方服务(微信支付)需要绑定回调接口,本地测试不便

实战

FRPS部署

FRP分为frps和frpc,为服务端-客户端架构,首先我们先在公网服务器上部署frps。

通常我们可以使用两种方式,一种是使用Docker,一种是去官网下载tar包。

首先介绍Docker下载去下载:

bash 复制代码
docker pull fatedier/frps:v0.60.0

拉取frps镜像。

编写frps.toml配置文件

ini 复制代码
[common]

bind_port = 8000

dashboard_port = 8001

dashboard_user = admin
dashboard_pwd = admin
token = your_token

将文件放入conf文件夹下,然后在conf文件夹同级编写docker-compose.yml文件

yaml 复制代码
# 命令执行 docker-compose -f docker-compose.yml up -d
version: '3.9'
services:
  frps:
    image: fatedier/frps:v0.60.0
    hostname: frps
    container_name: frps
    volumes:
      - "./config/frps.toml:/frps.toml"
    command:
      - "-c"
      - "/frps.toml"
    network_mode: "host"

最后执行:

复制代码
 docker-compose -f docker-compose.yml up -d

进入:http://your_addr:8001 即可进入dashbord

FPRC部署

参考FRPS的部署,不难想到可以通过docker下载再部署:

bash 复制代码
docker pull fatedier/frpc:v0.60.0

但是实际情况下发现,docker下载不了该镜像,哪怕是更改了版本也是如此(也可能是本人的问题)

所以关于FRPC本人是通过官网下载再上传至服务器的:

github.com/fatedier/fr...

这里需要注意!一定要下载和本地系统适配的版本,例如windows。

由于本人还用于内网穿透本地虚拟机上的服务,所以还要下载对应的linux版本,大家的非mac电脑应该都是x86版本,x86的后缀是386。

本人翻阅了相关release后,最新的x86版本为:frp_0.51.3_linux_386.tar.gz

大家根据自己的系统下载即可。

然后编写相关frpc.ini文件,这是本人的,大家参考着部署就好啦:

ini 复制代码
[common]
server_addr = "your_addr"
server_port = 8000
token = "gaoyifeng"

[ssh]
remote_port = 9000
type = "tcp"
local_ip = "127.0.0.1"
local_port = 22

[nginx-alone]
remote_port = 80
type = "tcp"
local_ip = "127.0.0.1"
local_port = 9002

[redis-alone]
remote_port = 6379
type = "tcp"
local_ip = "127.0.0.1"
local_port = 6380

[mysql8-alone]
remote_port = 3306
type = "tcp"
local_ip = "127.0.0.1"
local_port = 3306

[mysql5.7-alone]
remote_port = 3308
type = "tcp"
local_ip = "127.0.0.1"
local_port = 3307

[nacos2-alone-1]
remote_port = 8848
type = "tcp"
local_ip = "127.0.0.1"
local_port = 8848

[nacos2-alone-2]
remote_port = 9848
type = "tcp"
local_ip = "127.0.0.1"
local_port = 9848

[nacos2-alone-3]
remote_port = 9849
type = "tcp"
local_ip = "127.0.0.1"
local_port = 9849

最后通过命令:./frpc -c frpc.ini运行即可。运行完成后可去frps的控制台观察执行情况。

相关推荐
大勇前进几秒前
jQuery 事件委托原理:彻底解决动态生成元素绑定失效问题
后端
苍何10 分钟前
做了个微信聊天爆款视频 Skill, Codex / WorkBuddy一键复刻使用
后端·aigc
卷无止境16 分钟前
用 FastAPI 撑起大文件的上传下载:从流式处理到断点续传的完整实践
后端·python·fastapi
铁皮饭盒17 分钟前
网页端, 6.5MB人脸识别模型, 谷歌框架, 又快又准
前端·javascript·后端
长大198822 分钟前
jQuery AJAX 完整封装教程:告别重复写请求代码
后端
worxfr1 小时前
Go 并发控制:从 Channel 方向约束到实战模式
开发语言·后端·golang
拾陆楼2 小时前
PT: DMSA辅助调tree报告前后级余量脚本
后端·学习
今天的砖头有点烫手啊2 小时前
接口太慢?Spring Boot 缓存体系 @Cacheable 全链路拆解
spring boot·后端·缓存
雪隐3 小时前
个人电脑玩AI-16让5060 Ti给你打工——MiniMax H3 提速实录:从"泡杯茶等视频"到"视频等你",一张 5060 Ti 的自我修养
前端·人工智能·后端
952363 小时前
Sentinel
java·后端·spring·sentinel·springcloud